我正在使用Maven將我們的項目與其他人整合,可能以不受歡迎的方式遇到問題。maven部署文件失敗,503:找不到maven-metadata.xml
我們有一個用Ant編譯的項目。 Ant腳本非常棒,所以當我們使用Maven進行集成時,決定繼續使用Ant進行編譯。
現在讓我們來說說Ant編譯輸出是res-1.0-SNAPSHOT.tar.gz。 (任何文件名都是可能的,但它是tar.gz)我將文件部署到nexus託管的快照庫(稱爲「快照」)。
我試圖用這個命令部署:
mvn deploy:deploy-file \
-DgroupId="com.my-company" \
-DartifactId="res" \
-Dversion="1.0-SNAPSHOT" \
-Dpackaging="tar.gz" \
-Dfile="res-1.0-SNAPSHOT.tar.gz" \
-Durl="http://our-nexus-ip/nexus/content/repositories/snapshots" \
-DrepositoryId="snapshots"
我在〜/ .m2目錄下一個簡單的settings.xml與代理和服務器設置。然而,服務器設置尚未在當前的進度中使用,錯誤的密碼不會收到錯誤。
輸出是這樣的:
[[[email protected] maven]# ./run.sh
+ mvn deploy:deploy-file -DgroupId=com.my-company -DartifactId=res -Dversion=1.0-SNAPSHOT -Dpackaging=tar.gz -Dfile=res-1.0-SNAPSHOT.tar.gz -Durl=http://135.252.234.142:8081/nexus/content/repositories/snapshots -DrepositoryId=snapshots
Warning: JAVA_HOME environment variable is not set.
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'deploy'.
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Default Project
[INFO] task-segment: [deploy:deploy-file] (aggregator-style)
[INFO] ------------------------------------------------------------------------
[INFO] [deploy:deploy-file]
[INFO] Retrieving previous build number from snapshots
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error retrieving previous build number for artifact 'com.my-company:res:tar.gz': repository metadata for: 'snapshot com.my-company:res:1.0-SNAPSHOT' could not be retrieved from repository: snapshots due to an error: Error transferring file
Server returned HTTP response code: 503 for URL: http://135.252.234.142:8081/nexus/content/repositories/snapshots/com/my-company/res/1.0-SNAPSHOT/maven-metadata.xml
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 51 seconds
[INFO] Finished at: Tue Jun 12 08:44:13 CST 2012
[INFO] Final Memory: 7M/209M
[INFO] ------------------------------------------------------------------------
你看,它未能找到Maven的metadata.xml中。可以肯定的是,該文件及其文件夾「com/my-company」在存儲庫中完全不存在。
另外的Maven的任何濫用你會發現,我的問題是:
1)我在正確的方式使用Maven? (部署tar.gz,使用deploy:deploy-file ...)
2)有沒有不正確的參數?
3)什麼是maven-metadata.xml?它不在那裏,但Maven堅持要找到它 - 我想它是生成的,我錯過了一些步驟?
解決方案可能是愚蠢的,我真的不熟悉Maven。不幸的是它必須完成......請幫我解決這個問題。
Maven版本是2.0.11。讓我知道你是否想知道更多。