最近有一台没权限安装代码管理工具的服务器需要将springboot项目打包成一个jar,然后发布上去,在网上找了一堆教程,发现竟然没有几个是对的,要么打包的东西是失败的,要么打包出来还要自己附带一堆的依赖jar包,犹如脱裤子放屁一般,遂自己尝试,总结相关步骤如下:
1.首先最重要的当然是在pom中引入maven打包工具,like this:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!-- 指定该Main Class为全局的唯一入口 -->
<mainClass>cn.hetaoxk.noonday.AndromedaApplication</mainClass>
<layout>ZIP</layout>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中-->
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
这里非常要注意的是:如果有一个parent pom自定义的,管理了其他的模块,则他的发布类型应该是pom而不是jar,其次他不能引入打包工具;
2.如果有公共依赖模块,比如定义了一堆的DTO,CONSTANTS之类的,请一定不要在pom中引入打包工具,否则报错,就算不报错也会打包失败,可以理解为,谁需要打包部署,那么谁就引入打包插件;
3.在idea中点击右侧栏的Maven Projecties 然后点击如下地方,在输入处输入maven clean;然后maven package,然后target下可以找到相应的jar包;