Добавьте пользовательский JMOD в путь к модулю с Java 9
Я создал простойJMOD
файл с помощью инструмента jmod, как это
$JAVA_HOME/bin/jmod create --class-path classes test/samples.jmod
Затем я попытался выполнить класс в этом модуле, выполнив:
java -mp test -m de.mypackage/de.mypackage.Test
Что привело к следующему исключению:
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)
Если я просто установлю свойclasses
каталог (который я использовал для создания файла JMOD) как modulepath, все работает как положено.
Разве это не возможно иметьJMOD
файлы на модульном пути? И если это так, есть ли причина для этого?