{"id":15581833,"url":"https://github.com/ozlerhakan/java9-module-examples","last_synced_at":"2026-01-04T11:55:24.720Z","repository":{"id":148099786,"uuid":"111910128","full_name":"ozlerhakan/java9-module-examples","owner":"ozlerhakan","description":"a list of Java 9 module samples to dive into the modular world ","archived":false,"fork":false,"pushed_at":"2018-07-01T21:20:10.000Z","size":677,"stargazers_count":28,"open_issues_count":0,"forks_count":8,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-01-25T10:43:23.093Z","etag":null,"topics":["java","java9","java9-jigsaw","jigsaw","modularity","module","serviceloader"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ozlerhakan.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-24T11:17:04.000Z","updated_at":"2025-01-09T22:43:30.000Z","dependencies_parsed_at":"2023-05-19T04:00:30.654Z","dependency_job_id":null,"html_url":"https://github.com/ozlerhakan/java9-module-examples","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ozlerhakan%2Fjava9-module-examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ozlerhakan%2Fjava9-module-examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ozlerhakan%2Fjava9-module-examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ozlerhakan%2Fjava9-module-examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ozlerhakan","download_url":"https://codeload.github.com/ozlerhakan/java9-module-examples/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244591486,"owners_count":20477710,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","java9","java9-jigsaw","jigsaw","modularity","module","serviceloader"],"created_at":"2024-10-02T19:56:18.723Z","updated_at":"2026-01-04T11:55:24.683Z","avatar_url":"https://github.com/ozlerhakan.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"= Java 9 Module Examples\n\nWhat I have learned from the Resources list is that Module System in Java 9 is an optional decision. Your project could rely on the classpath as before whereas the module system brings several benefits to your applications such as modular thinking, encapsulation, dependency management and services. To this end, in this repository you'll find several practical Java 9 module examples that could give you some brief ideas. Feel free to open up https://github.com/ozlerhakan/java9-module-examples/issues/new[an issue], if you find any typos or mistakes that I have made.  \n\n=== Modi\n\nShows how to compile and run an unnamed module.\n\n=== ModiM\n\nDemonstrates how to compile and run an application module.\n\n=== ModiMs-exports-requires\n\nDemonstrates how to compile and run multiple application modules using the `exports` and `requires` clauses.\n\n=== ModiMs-provides-uses\n\nDemonstrates how to compile and run multiple application modules using the `provides ... with` and `uses` clauses.\n\n=== ReT (Requires-Transitive)\n\nShows the way of handling transitive dependencies on a module system.\n\n=== Javafx\n\nShows how to solve the issues while converting a javafx project into an application module. \n\n=== Reflect\n\nDemostrates how to use the `opens` clause when using the reflection API in an application module.\n\n=== Java Platform Module Cheat Sheet\n\nimage:images/RebelLabs-Java-9-modules-cheat-sheet.png[link=https://zeroturnaround.com/rebellabs/java-9-modules-cheat-sheet/]\n\n=== OS Projects\n\n* https://github.com/jodastephen/jpms-module-names[JPMS Module Names]\n\n=== Resources\n\n* https://blog.codefx.org/java/[Nicolai Parlog Blog]\n* https://dzone.com/articles/jdk9-howto-create-a-java-run-time-image-with-maven[JDK 9: Creating a Java Runtime Image With Maven]\n* https://github.com/java9-modularity[Java 9 Modularity Samples]\n* https://github.com/ConSol/java9-modules-maven-junit-example[Java 9 Modules Example with Maven and JUnit]\n* https://github.com/eh3rrera/getting-started-jpms[Java 9 module system tutorials]\n* https://github.com/cfdobber/maven-java9-jigsaw[Example project with Maven, Java 9 and Jigsaw]\n* http://openjdk.java.net/jeps/282[Jlink: The Java Linker]\n* http://openjdk.java.net/jeps/220[Modular Run-Time Images]\n* https://stackoverflow.com/questions/46502453/[Readability Recap]\n* https://www.voxxed.com/2016/11/problem-modules-reflective-access/[How do you solve a problem like Java 9 modules and reflective access?]\n* https://labs.consol.de/development/2017/02/13/getting-started-with-java9-modules.html[Getting Started with Java 9 Modules]\n* https://docs.oracle.com/javase/9/migrate/toc.htm[JDK 9 Migration Guide]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fozlerhakan%2Fjava9-module-examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fozlerhakan%2Fjava9-module-examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fozlerhakan%2Fjava9-module-examples/lists"}