Jmod简介
jmod 是从 Java 9 开始引入的一种文件格式,用于打包 Java 模块(Java Module) 的工具和文件类型。它在模块化系统(Java Platform Module System, JPMS)中扮演着重要角色。下面是它的主要用途和特点:
🧩 一、基本用途
jmod 文件主要用于:
存储模块化的 Java 组件
每个
.jmod文件代表一个模块,包含:.class文件(已编译的 Java 类)本地库(如
.so、.dll)配置文件、资源文件
模块描述符
module-info.class
支持创建自定义 JRE(Runtime Image)
搭配
jlink工具使用,可以从.jmod文件中选择需要的模块,打包成一个 精简、专用的运行时镜像。例如:
jlink --module-path $JAVA_HOME/jmods:mods --add-modules my.module --output myruntime
替代传统的 JAR 用途(在模块化场景下)
虽然
.jar文件仍然常用,但.jmod包含更多元信息,适合在模块层级管理中使用。
⚙️ 二、常用命令
Java 提供了 jmod 工具来创建或查看 .jmod 文件:
🧠 三、与 JAR 的区别
✅ 四、总结
.jmod文件是 模块系统下的“模块包”,更适合底层系统打包与运行时定制;主要与
jlink配合,用于生成定制化 JRE;对开发者而言,平时还是使用
.jar来分发代码,而.jmod更多用于 JDK 构建、系统集成和运行时优化。