所谓fat jar就是包含所有依赖的jar以及其他开发的代码的jar包。可以通过java -jar xxx.jar直接启动运行,不需要部署到tomcat中间件就能运行。
接下来我们使用maven进行打包:
(1)在需要带包的主模块的pom中添加build依赖:
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.6.13</version><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins>
</build>
这里有个主意事项:
如果父模块没有定义继承spring-boot-starter-parent,那么spring-boot-maven-plugin需要添加版本号,否则会拉取最新的版本,可能会报错。如下,我的示例中没有继承,在上面的build中就明确了版本号
(2)执行mvn clean package即可:
在target下就生成fat jar了
在BOOT-INF\lib下包含了所有依赖的jar
(3)试着运行一下,也能正常启动