Package conflicts with automatic modules in Java 9

Am I using the new module system correctly? Yes. What you are seeing is intended behavior, and this is because JPMS modules do not allow split packages. In case you are not familiar with the term “split packages” it essentially means two members of the same package coming from two different modules. For example: com.foo.A … Read more

Create Java runtime image on one platform for another using Jlink

The include directory is for header files, such as jni.h, that are needed when compiling C/C++ code that uses JNI and other native interfaces. It’s nothing to do with jlink. The jlink tool can create a run-time image for another platform (cross targeting). You need to download two JDKs to do this. One for the … Read more

How should I name my Java 9 module?

For a while there were two different opinions on your question but during the development of the module system, the community settled on the reverse DNS approach. Unique Module Names – Reverse DNS Here, the assumption is that module names should be globally unique. Given that goal, the most pragmatic way to get there follows … Read more

In Eclipse, what is the difference between modulepath and classpath?

The module system has mainly the following impact on the code: A package can only be accessed from one module (Nested packages are treated as separate, so even though the package java.util is in the module java.base, the package java.util.logging can be in the module java.logging) You can only access public fields and methods of … Read more

findResource(“”) returning null when module-info.java is present, why is that?

One thing I notice is that your application (assuming that it’s packaged in tech.flexpoint.dashman) does not seem to be opened up to Spring in any way, which will surely result in failed class loading/illegal access. I would expect to see something like this in module-info.java (depending on your Spring dependencies): opens tech.flexpoint.dashman to spring.core, spring.beans, … Read more