云计算百科
云计算领域专业知识百科平台

SpringBoot打包

1,默认打包

        一般我们在需要使用SpringBoot Maven插件进行打包时,通常会使用如下插件依赖:

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!– 关键配置:指定主类 –>
<mainClass>org.example.GrpcApplication</mainClass>
</configuration>
</plugin>

假设我们设置的版本号为1.0.0,则最后生成的jar包为: ${artifactId}-${version}.jar

但这种有个问题,一般我们的部署脚本(jenkins、执行命令脚本)都会定死一个jar包名,而我们业务上这个版本号会 经常进行变更,这就导致我们需要频繁进行更改很麻烦。

2,打两个包,默认包+exec固定包

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!– 关键配置:指定主类 –>
<mainClass>org.example.GrpcApplication</mainClass>
<!– 关键配置:生成exec包 –>
<classifier>exec</classifier>
</configuration>
</plugin>

假设我们设置的版本号为1.0.0,则最后生成的jar包为: ${artifactId}-${version}.jar、${artifactId}-${version}-exec.jar

3,打两个包,不含版本号包+exec固定包

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!– 关键配置:指定主类 –>
<mainClass>org.example.GrpcApplication</mainClass>
<!– 关键配置:生成exec包 –>
<classifier>exec</classifier>
<!– 关键配置:设置最终文件名 –>
<finalName>${project.artifactId}</finalName>
</configuration>
</plugin>

假设我们设置的版本号为1.0.0,则最后生成的jar包为: ${artifactId}-${version}.jar、${artifactId}-exec.jar

4,打一个包,不含版本号包

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!– 关键配置:指定主类 –>
<mainClass>org.example.GrpcApplication</mainClass>
<!– 关键配置:生成exec包 –>
<classifier>exec</classifier>
<!– 关键配置:设置最终文件名 –>
<finalName>${project.artifactId}</finalName>
</configuration>
</plugin>
</plugins>
<!– 全局定义 JAR 名称(不带版本号) –>
<finalName>${project.artifactId}</finalName>
</build>

假设我们设置的版本号为1.0.0,则最后生成的jar包为: ${artifactId}.jar、${artifactId}-exec.jar

5,只生成一个不含版本号的指定名称的jar包

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!– 关键配置:指定主类 –>
<mainClass>org.example.GrpcApplication</mainClass>
</configuration>
</plugin>
</plugins>
<!– 全局定义 JAR 名称(不带版本号) –>
<finalName>${project.artifactId}</finalName>
</build>

假设我们设置的版本号为1.0.0,则最后生成的jar包为: ${artifactId}.jar

赞(0)
未经允许不得转载:网硕互联帮助中心 » SpringBoot打包
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!