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.
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.
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?
In the second issue of SitePoint’s Java Channel Newsletter I wonder why Java 9 takes so long.