基于jlink优化的jdk11版本用于精简jre
发布时间
阅读量:
阅读量
jdk11使用jlink定制精简jre
jdk11采用了模块化的架构设计,不再默认集成jre,而是根据实际需求进行构建。用户只需选择所需模块进行打包,避免引入不相关的组件,从而有效减少jre的总体体积。
进入jdk11的安装目录,
在bin文件夹中可以找到名为jlink.exe的可执行文件,该工具将被用于后续操作;同时,在jmods目录下可见多个以jmod为后缀的文件。实际上,这些jmod文件本质上是压缩格式的数据包,可通过解压软件打开,其中包含各类class文件及其他相关资源。
其中java.base.jmod是最基础的核心模块,其运行不依赖于其他任何模块。而其余所有模块均需依赖java.base模块。该基础模块中涵盖了诸如java.lang.Object、java.lang.String等基本类。
关于具体的模块化实现方式,可参考官方文档:
http://openjdk.java.net/jeps/200
若需查看项目所依赖的模块信息,可以使用如下命令(xxx.jar为项目生成的jar包):
jdeps --list-deps xxx.jar
接下来我们使用前一篇文章中创建的项目来构建自定义版本的jre。由于前文中的项目未引入额外模块,因此仅需包含java.base即可。
[使用 jdk11 + maven 开发
全部评论 (0)
还没有任何评论哟~
