Contentshtml
1. 概述
2. 必要準備
安裝Java
下載安裝Maven
3. 服務器配置
新建鏈接源
4. 客戶端配置
5. 上傳maven包文件
6. 常見問題
Maven最新版本3.6.2出現異常java
Azure DevOps Server (TFS)能夠實現多種依賴包的託管服務器,例如NuGet、NPM、Maven、Python、Gradle、Azure通用包等。其中Maven庫是許多Java開發人員最爲熟悉的一種庫,Azure DevOps Server提供了一種相似與Maven私服(例如Nexus)的保管理服務。開發人員能夠從Azure DevOps Server中獲取軟件系統依賴的第三方軟件包,也能夠將本身開發的公共軟件包發佈到Azure DevOps服務器上,分享給其餘開發團隊。apache
Azure DevOps中的Maven包管理,遵循標準的Maven包管理協議,開發人員能夠使用任何標準的maven工具上傳和下載依賴包。比較常見的依賴包管理有兩種方式:在編譯流程中自動發佈包文件;使用maven插件deploy-file將已經存在的包文件發佈到服務器上。服務器
若是須要了解在編譯流程中發佈maven包,能夠參考 Azure DevOps Server;maven
本文主要介紹如何使用maven插件deploy-file將已經存在的包文件發佈到服務器上。編輯器
在本文中,咱們使用64位java,1.8.0工具
C:\apache-maven-3.6.2\bin>java -version java version "1.8.0_161" Java(TM) SE Runtime Environment (build 1.8.0_161-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
ui
在本文中,咱們使用了Maven版本3.6.0,當前最新的版本3.6.2出現異常,參考後面的常見問題描述。url
配置名稱和權限spa
生成Maven認證信息
複製在服務器中生成的Maven認證信息,並將其配置到本地計算機的Maven配置文件settings.xml中
使用文本編輯器打開本地計算機中的Maven配置文件,並將上面生成的認證信息粘貼到文檔中的Servers節點中
首先咱們須要準備好已經存在的Maven包文件,例以下面的的操做中,咱們使用從互聯網下載的包文件ckfinder.jar
咱們編寫好下面的命令行腳本
mvn deploy:deploy-file -DgroupId=com.ckfinder -DartifactId=ckfinder -Dversion=2.6 -Dpackaging=jar -DrepositoryId=tfs-net-com-cn-collection-c-maven -Dfile=D:\temp\ckfinder.jar -Durl=http://tfs.net.com.cn:8080/tfs/Collection/_packaging/maven/maven/v1
須要對上面的幾個關鍵參數作一些說明:
若是須要了解更多的參數,請參考maven的官方文檔:
C:\apache-maven-3.6.2\bin>mvn deploy:deploy-file -DgroupId=com.ckfinder -DartifactId=ckfinder -Dversion=2.6 -Dpackaging=jar -DrepositoryId=tfs-mc-net-智能軟件公司-zhanghongjun -Dfile=D:\temp\htmlparser.jar -Durl=http://tfs.mc.net:8080/tfs/智能軟件公司/_packaging/zhanghongjun/maven/v1 [INFO] Scanning for projects... [INFO] [INFO] ------------------< org.apache.maven:standalone-pom >------------------- [INFO] Building Maven Stub Project (No POM) 1 [INFO] --------------------------------[ pom ]--------------------------------- [INFO] [INFO] --- maven-deploy-plugin:2.7:deploy-file (default-cli) @ standalone-pom --- Uploading to tfs-mc-net-智能軟件公司-zhanghongjun: http://tfs.mc.net:8080/tfs/智能軟件公司/_packaging/zhanghongjun/maven/v1/com/ckfinder/ckfinder/2.6/ckfinder-2.6.jar Uploading to tfs-mc-net-智能軟件公司-zhanghongjun: http://tfs.mc.net:8080/tfs/智能軟件公司/_packaging/zhanghongjun/maven/v1/com/ckfinder/ckfinder/2.6/ckfinder-2.6.pom [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.018 s [INFO] Finished at: 2019-09-26T17:28:41+08:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy-file (default-cli) on project standalone-pom: Failed to deploy artifacts: Could not transfer artifact com.ckfinder:ckfinder:jar:2.6 from/to tfs-mc-net-智能軟件公司-zhanghongjun (http://tfs.mc.net:8080/tfs/智能軟件公司/_packaging/zhanghongjun/maven/v1): Failed to transfer file http://tfs.mc.net:8080/tfs/智能軟件公司/_packaging/zhanghongjun/maven/v1/com/ckfinder/ckfinder/2.6/ckfinder-2.6.jar with status code 400 -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.a
------------------------------------------------------------
http://www.cnblogs.com/danzhang/ DevOps MVP 張洪君
------------------------------------------------------------