我可以使用以下mvn命令行选项自行部署RPM:
mvn -e deploy:deploy-file \
-Durl=http://repo.myorg.com/content/repo/snapshots \
-DrepositoryId=myorgsnapshots \
-DgroupId=com.myorg.mygroup \
-DartifactId=testApp \
-Dversion=1.0.15-SNAPSHOT \
-Dpackaging=rpm \
-Dfile="testApp-1.0.15-1.el6.x86_64.rpm"
我现在想要包含一个.tgz文件和RPM。完成此任务的正确选项是什么?我已尝试使用sources
,files
,types
和classifiers
选项,如 here 所述,各种组合为no效果,甚至不是错误。
答案 0 :(得分:0)
简单的解决方案是再次执行deploy:deploy-file
目标。
由于两个工件都有不同的包装,因此不会发生任何冲突:第一个包装采用rpm
包装,第二个采用tgz
包装。来自packaging
:
如果未通过命令行或POM指定,则默认为文件扩展名。
因此,您不需要提供该参数,它将默认为扩展名。
唯一的洞穴是插件将尝试为第二次执行生成另一个POM。来自generatePom
:
如果pomFile参数没有提供,则会生成默认POM。默认值:
true
但是,您可以将generatePom
设置为false
来禁用该功能。
mvn -e deploy:deploy-file \
-Durl=http://repo.myorg.com/content/repo/snapshots \
-DrepositoryId=myorgsnapshots \
-DgroupId=com.myorg.mygroup \
-DartifactId=testApp \
-Dversion=1.0.15-SNAPSHOT \
-Dfile="testApp-1.0.15-1.el6.x86_64.rpm"
mvn -e deploy:deploy-file \
-Durl=http://repo.myorg.com/content/repo/snapshots \
-DrepositoryId=myorgsnapshots \
-DgroupId=com.myorg.mygroup \
-DartifactId=testApp \
-Dversion=1.0.15-SNAPSHOT \
-DgeneratePom=false \
-Dfile="testApp-1.0.15-1.el6.x86_64.tgz"