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
ファイルを配置することはできませんか? また、もしそうなら何か理由はありますか?