maven打包带jre
时间: 2023-09-20 10:09:27 浏览: 160
Maven可以使用插件来打包含有JRE的可执行文件。其中比较常用的插件是Maven Assembly Plugin和Maven Shade Plugin。
Maven Assembly Plugin可以将项目打包成zip、tar.gz等格式,并且可以包含JRE。在pom.xml文件中添加以下配置:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<archive>
<manifest>
<mainClass>com.example.MainClass</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
```
在执行`mvn package`命令后,生成的压缩包中会包含JRE。
Maven Shade Plugin也可以将项目打包成含有JRE的可执行文件。在pom.xml文件中添加以下配置:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.4</version>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.example.MainClass</mainClass>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
<resource>jdk-11.0.8</resource>
<file>${java.home}/../</file>
</transformer>
</transformers>
<minimizeJar>true</minimizeJar>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
```
在执行`mvn package`命令后,生成的可执行文件中会包含JRE。
阅读全文