Tho*_* S. 4 java java-platform-module-system
我们有一个不使用AWT / Swing / JavaFX的Java应用程序,并且可以与私有捆绑的JRE 8一起正常工作。JRE9远远大于JRE 8,但是我们想让用户使用JRE 9来尝试我们的应用程序。但仍想对我们的代码或jar进行模块化(以保持与Java 8的兼容性)。
如何创建可以与该Java应用程序捆绑在一起的“必需的”(精简到最少的必需部分)私有JRE 9?
可以创建JRE的自定义运行时映像,而无需将应用程序本身转换为Java 9模块。首先,我们需要找出需要哪些模块(JDK / JRE的):
"C:\Program Files\Java\jdk-9.0.1\bin\jdeps.exe"
-s
"C:\path\to\my\jars\*.jar"
Run Code Online (Sandbox Code Playgroud)
然后,我们可以创建一个轻量级的jre目录结构(用您的应用程序所需的模块替换java.logging,java.xml):
"C:\Program Files\Java\jdk-9.0.1\bin\jlink.exe"
--module-path "C:\Program Files\Java\jdk-9.0.1\jmods"
--add-modules java.logging,java.xml
--output "e:\myproject\jre"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
449 次 |
| 最近记录: |