I created a simple JMOD
file with the jmod tool like this
$JAVA_HOME/bin/jmod create --class-path classes test/samples.jmod
Next, I tried to execute a class within that module by running:
java -mp test -m de.mypackage/de.mypackage.Test
Which resulted in the following exception:
Error occurred during initialization of VM
java.lang.module.ResolutionException: JMOD files not supported: test/samples.jmod
at java.lang.module.Resolver.findWithBeforeFinder(java.base@9-ea/Resolver.java:729)
at java.lang.module.Resolver.resolveRequires(java.base@9-ea/Resolver.java:86)
at java.lang.module.Configuration.resolveRequiresAndUses(java.base@9-ea/Configuration.java:370)
at java.lang.module.ModuleDescriptor$1.resolveRequiresAndUses(java.base@9-ea/ModuleDescriptor.java:1986)
at jdk.internal.module.ModuleBootstrap.boot(java.base@9-ea/ModuleBootstrap.java:263)
at java.lang.System.initPhase2(java.base@9-ea/System.java:1928)
If I just set my classes
directory (that I used to create the JMOD file) as modulepath, everything is working as expected.
Is it generally not possible to have JMOD
files on the modulepath? And if this is the case, is there any reason for that?