2014-02-13 64 views
1

也許這個問題要求超過一百次,但我沒有在搜索功能中找到它。maven自動在Archiva上部署工件?

好吧,我們有一個運行Jenkins和Archiva的CI服務器。用maven構建我們的代碼。但是現在我們的IT部門更改了CI服務器的代理配置。它無法上網。

當我使用新的工件並在本地構建它時,mvn會下載並將其存儲在本地倉庫中。

但是,當我提交SVN中的源代碼詹金斯失敗,造成缺失的互聯網連接。

那麼當我使用maven在本地構建項目時,是否有辦法自動將工件和maven插件部署到Archiva?

回答

0

我創建了一個詹金斯的工作,將執行一個shell腳本要求Maven來在Archiva部署我們的私人神器

先決條件

在你的.m2/settings.xml文件添加服務器,即

<server> 
    <id>archiva.release</id> 
    <username>admin</username> 
    <password>123456</password> 
</server> 

部署第三方的文物archiva庫shell腳本

  #!/bin/bash 

      rm_host=localhost  # archiva server address 
      rm_port=8080   # archiva port 
      major_version=1  # 
      minor_version=0  # 
      version_build=1  # 
      repository=private  # your repository id in archiva 

      mvn deploy:deploy-file 
       -Dfile=myApp.jar 
       -DgroupId=com.company 
       -DartifactId=myApp 
       -Dversion=${major_version}.${minor_version}.${version_build} 
       -Dpackaging=jar 
       -Durl=http://${rm_host}:${rm_port}/repository/${repository}/ -DrepositoryId=archiva.release