在部署期间覆盖maven发布存储库
我正在开发一个开源库,希望将版本发送到内部artifactory服务器。我一直在使用maven的在部署期间覆盖maven发布存储库,maven,plugins,release,Maven,Plugins,Release,我正在开发一个开源库,希望将版本发送到内部artifactory服务器。我一直在使用maven的distributionManagement和overridingaltDeploymentRepository指向内部服务器(因此它从未出现在pom中)。当我使用deploy:deploy时,这很好,但是当我使用maven发布插件时,这似乎被忽略了 mvn clean -DaltDeploymentRepository=central::default::internalhost deploy ##
distributionManagement
和overridingaltDeploymentRepository
指向内部服务器(因此它从未出现在pom中)。当我使用deploy:deploy
时,这很好,但是当我使用maven发布插件时,这似乎被忽略了
mvn clean -DaltDeploymentRepository=central::default::internalhost deploy ## works
mvn clean -DaltDeploymentRepository=central::default::internalhost release:perform ## fails, doesn't pick up this setting
当发布插件运行deploy时,如何通过命令行覆盖存储库?在您正在使用的版本上,您应该编辑pom以更改分发管理部分以使用您的内部存储库。使用
altReleaseDeploymentRepository
它的语法与altDeploymentRepository相同
更多信息请访问:
mvn发布:perform-Darguments=-DaltDeploymentRepository=myvalue
诀窍是:'-Dargument'
有效的解决方案位于yorkw的注释中(对于版本2.7中的maven deploy插件)
当您使用更高版本的maven部署插件(例如2.8)时,请使用参数
altReleaseDeploymentRepository
你不能编辑POM来重新定义分发管理信息吗?试试这个
mvn发行版:perform-Darguments=-DaltDeploymentRepository=myvalue
。谢谢@yorkw,效果很好@yorkw您应该将此作为完整答案发布,因为它是正确的答案。central::default::internalhost
是什么意思?它不应该像一些url吗?尽管您如何在其中传递用户名/密码?@old monk格式为“some id:url”,服务器“some id”的凭据位于您的~/.m2/settings.xml
文件中。