模块打包
1. maven打成jar包
在attendance模块的pom.xml添加以下内容:
xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.4.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.rocket.attendance.DailyWork</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
在父maven项目下,直接执行package:
2. 打包jmods
使用jmod命令将项目jar包按照模块打成jmods文件(直接并不能直接使用),可以理解为jmods文件=普通jar包+权限控制
cmd
jmod create --class-path sys-0.0.1-SNAPSHOT.jar sys.jmod
jmod create --class-path attendance-0.0.1-SNAPSHOT.jar attendance.jmod
2.2 生成定制的JRE环境
将sys.jmod和attendance.jmod文件放在parts文件夹: 在jmods-demo文件夹下执行命令:
cmd
jlink --module-path parts --add-modules java.base,com.rocket.sys,com.rocket.attendance --output myjre
命令执行完毕后会在jmods-demo文件夹下生成myjre文件夹: 进入myjre文件夹,执行我们的com.rocket.attendance模块: