Spring Boot Package
1. 使用 spring-boot-maven-plugin 打包
生成一个可执行的 jar 文件
2. 自定义打包
由于默认打包方式生成的 jar 文件过于庞大,在带宽受限的网络环境下,部署速度太慢,这时就需要自定义可执行的 jar 文件,只把工程代码打包在 jar 文件中,将依赖文件都存放在其他目录,这样每次生成的 jar 文件体积就非常小,便于传输部署。
最简单的打包方式是使用 maven-jar-plugin 和 maven-dependency-plugin 插件,简单配置一下,即可实现。
pom.xml 文件配置如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<!--自定义jar文件名称,可选-->
<jarName>app</jarName>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<!--maven-dependency-plugin 默认生成的依赖文件夹名称-->
<classpathPrefix>dependency/</classpathPrefix>
<mainClass>cn.eastseven.Application</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
|
执行命令:
1
|
mvn clean compile jar:jar dependency:copy-dependencies
|
target 目录下
1
2
3
4
5
6
7
|
target
|__classes
|__dependency
|__generated-source
|__maven-archiver
|__maven-status
|__app.jar
|
其中 app.jar 和 dependency 就是部署时需要的文件
执行命令:
1
|
java -jar target/app.jar
|
PS: 这种打包方式没有分离配置文件。
示例源码
3. 参考