Java 9 中的 JLink 工具是什么?
JLink 是一个新的链接器工具,用于创建我们自己的定制 JRE。通常,我们可以使用 Oracle 提供的默认 JRE 运行我们的程序。如果我们需要创建我们自己的 JRE,则可以使用此工具。JLink 工具可以帮助创建只包含运行应用程序所需的必要类的 JRE。它可以减少开发的 API 大小以及使用完整 JRE 的依赖性。
在Java 9中,我们在编译代码及其执行之间增加了一个新的阶段:链接时间。链接时间是在编译时间和运行时间阶段之间的一个可选阶段。
创建自定义 JRE 的命令
jlink --module-path --add-modules --limit-modules --output
- module-path 是链接器发现可观察模块的路径。它可以是模块化 JAR 文件、JMOD 文件和模块。
- add-modules 指定要添加到运行时映像的模块,这些模块可以通过传递依赖关系导致添加其他模块。
- limit-modules 限制可观察模块的范围。
- the output 是包含生成的运行时映像的目录。
jlink --module-path $JAVA_HOME/jmods:mlib --add-modules com.greetings --output greetingsapp
在上面的命令中,module-path 的值是包含已打包模块的目录的路径。JAVA_HOME/jmods 是一个包含java.base.jmod、其他标准和 JDK 模块的目录。模块路径上的mlib目录包含模块com.greetings的构件。
广告