项目有个需求,要把当前项目的代码和依赖打包成一个jar包,再把jar包和一些相关文件一起打包成一个tar
这里用到了两个插件,shade 和assembly,shade负责生成jar包,assembly负责打包成tar。pom.xml配置如下:
org.apache.maven.plugins
maven-shade-plugin
1.4
package
shade
abc-service //打包成的包名
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
com.abc.Main //主类名
org.apache.maven.plugins
maven-assembly-plugin
2.4.1
assembly.xml
.......
assembly.xml里定义打包成tar的动作
beta
tar.gz
resource //相关文件目录
/
${project.build.directory}/abc-service.jar //源jar包名
/
abc-service.jar //tar内jar包名
在maven的执行goals里填写如下:
clean test package assembly:assembly
原文:http://my.oschina.net/piorcn/blog/388255