Want to build with Maven on Java 9? Here’s which versions to pick, how to use the compiler executable, toolchains, and mavenrc to run Maven on Java 9, and how to use mvn/jvm.config and profiles to configure your build for Java 8 and 9.
Java 9 is here! And it is more than just the module system. (I know, I was surprised too.) In fact, Java 9 brings a number of interesting new features and I’ll explore them one by one.
Using annotations from JSR-305 (@Nonnull, @Nullable, etc.) with others from the javax.annotation package (@Generated, @PostConstruct) on Java 9 causes a split package. Here’s the fix.
Learn all the module system basics in this tutorial: how to declare modules with module-info.java, compile, package, and launch them and what role the module path and readability graph play.
Java 9 introduces unified logging, a central mechanism configurable with -Xlog to observe class loading, threading, the garbage collector, the module system, etc.
Get your code running on the Java 9 Module System with the command line options –add-exports, –add-opens, –add-modules, –add-reads, and –patch-module.
Time to put your Java 9 knowledge into practice and plan your applications migration. Here’s how to get an overview of what needs to be done.
Migrating to Java 9 is no walk in the park, but it’s not intractable either. If you know how to fix these seven most common problems, you’ll be able to power through and make your project Java 9 compatible.
You can tell that Java 9 draws near because the number of posts and talks about it skyrocketed in the recent months. I want to recommend existing talks and articles […]
The module system allows optional dependencies with the ‘requires static’ clause. Module required this way are accessible at compile time but can be absent at run time.
Reflection wants to break into all code; encapsulation wants to give modules a safe space. How can this stand off be resolved?