JDK 9(JPMS) に基づくプログラムで、IDE (Intellij )私はそれらを「必要」とし、プログラムは正常に動作します。java9 'jlink' を使用してカスタマイズされた JRE を取得しようとすると、次のようになります。
/out$ jlink --module-path production --add-modules
studyModule,java.base,java.datatransfer,java.desktop,java.logging,
java.scripting,java.sql,java.xml,java.prefs,javafx.base,
javafx.controls,javafx.fxml,javafx.graphics,javafx.media,
javafx.swing,javafx.web,jdk.jsobject,jdk.xml.dom,jdk.unsupported
--output studyJre
Error: module-info.class not found for com.zaxxer.hikari module
/out$ jlink --module-path production --add-modules
studyModule,java.base,java.datatransfer,java.desktop,java.logging,
java.scripting,java.sql,java.xml,java.prefs,javafx.base,
javafx.controls,javafx.fxml,javafx.graphics,javafx.media,
javafx.swing,javafx.web,jdk.jsobject,jdk.xml.dom,jdk.unsupported
--output studyJre
Error: module-info.class not found for poi module
質問は: IDE を含むこれらのパッケージが正常に動作するのはなぜですか? モジュール化されていない場合は、IDE でも機能しません。
PS:jlinkで作業するときに、これらのjarを「ルート」フォルダーに追加しました。