2017-05-08 44 views
8

如何使用我自己的旅行車將第三方包部署到我的遠程存儲庫?使用定製旅行車使用maven部署第三方包到我的內部回購

例如,我可以使用以下命令部署第三方軟件包而不更改pom.xml。

mvn deploy -DaltDeploymentRepository=thirdparty::default::http://myremoserver.com/mavenrepository/thirdparty -f thirpartpomfile -Dmaven.install.skip=true -Dmaven.test.skip=true 

我該如何告訴maven使用特定的旅行車來部署軟件包?我可以通過一些命令行參數或添加一些條目到settings.xml嗎?

我該如何爲gradle做同樣的事情?

回答

1

的 「Guide to deploying 3rd party JARs to remote repository」 只提及:

First, the wagon-provider(wagon-ftp , wagon-file , etc..) must be placed to your ${maven.home}/lib .

這足夠你使用mvn deploy-file與其他協議。
您應該在那裏複製您自己的旅行車(${maven.home}/lib)。

Maven Deploy File Plugin FAQ

If you are using the deploy:deploy-file goal and encounter this error:

Error deploying artifact: Unsupported Protocol: 'ftp': 
    Cannot find wagon which supports the requested protocol: ftp" 

Then you need to place the appropriate wagon provider in your %M2_HOME%/lib.

如果錯誤的描述是這樣的:

Error deploying artifact: Unsupported Protocol: 'ftp': 
    Cannot find wagon which supports the requested protocol: 
    ftp org/apache/commons/net/ftp/FTP" 

Then you need to place the commons-net jar in %M2_HOME%/lib .

隨着搖籃,你可以做同樣的,但與Maven plugin,委派部署,文件maven,因爲Maven Deployer plugin可能不支持自定義協議。