maven---常見錯誤

關于maven構件解析步驟請看maven---6倉庫-->6從倉庫解析依賴的機制

1依賴解析錯誤

1.1錯誤結果

Paste_Image.png

1.2產生可能原因

從私服上下載構件(依賴或插件)時由于私服服務器不穩定或者網絡原因導致傳輸文件失敗。

  • 上面失敗原因是解析stanford-corenlp-3.3.1.jar失敗,而解析stanford-corenlp-3.3.1.jar失敗是因為從私服上傳輸文件到本地失敗,錯誤返回碼是500,說明私服傳輸出現問題。
  • 看一下本地stanford-corenlp-3.3構件的內容:
Paste_Image.png
  • 其中stanford-corenlp-3.3.1.jar.lastUpdated文件記錄的是最近一次maven根據更新規則或者(-U)命令執行的一次正常檢查更新失敗的原因。如果更新成功就沒有該文件,內容如下:
#NOTE: This is an Aether internal implementation file, its format can be changed without prior notice.
#Mon Jan 09 22:48:23 CST 2017
@default-nexus-mirror-http\://172.19.201.155\:8081/repository/maven-public/.lastUpdated=1483973303784
http\://localhost\:8081/repository/maven-public/.lastUpdated=1480213183807
http\://localhost\:8081/repository/maven-public/.error=
http\://172.19.201.155\:8081/repository/maven-public/.error=Could not transfer artifact edu.stanford.nlp\:stanford-corenlp\:jar\:3.3.1 from/to nexus-mirror (http\://172.19.201.155\:8081/repository/maven-public/)\: Failed to transfer file\: http\://172.19.201.155\:8081/repository/maven-public/edu/stanford/nlp/stanford-corenlp/3.3.1/stanford-corenlp-3.3.1.jar. Return code is\: 500, ReasonPhrase\: Server Error.

1.3解決辦法

1.在保證網絡暢通的情況下,再次執行一遍相同的maven命令,同時加上-U參數,讓maven強制更新,不然如果在新的更新周期沒到后,maven會直接將上次緩存的失敗結果返回給你,如下圖返回緩存失敗結果。


返回緩存的失敗結果

2.上一個方法有可能還會失敗:因為-U會和私服交互檢查更新pom.xml中的所有構件,如果pom.xml中的構件很多,有可能還會因為私服不穩定等原因造成此次執行失敗。那么有一種情況可以不使用-U,首先要明白,凡是pom.xml中的構件在本地倉庫中存儲xxxx.lastUpdated文件,那么maven就會去遠程倉庫檢查更新(當然如果在更新周期沒到期間會直接返回上次更新失敗結果),更新成功就會刪掉該文件,失敗會繼續存在。所以把pom.xml中構件在本地倉庫中的xxxx.lastUpdated文件刪除掉,這樣maven在執行命令時,發現依賴的構件存在直接使用,而不去更新(如果存在xxxx.lastUpdated肯定會連接私服更新),發現構件不存在就去下載。當然這只適合構件不太多情況。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • |-1-更新內容[6.從倉庫解析依賴的機制(重要)] 1Maven倉庫作用 倉庫用來存儲所有項目使用到構件,在ma...
    zlcook閱讀 6,166評論 0 25
  • 首先私服是一種衍生出來的特殊的Maven遠程倉庫,構建私服的好處請看3.5私服 可以幫助大家建立私服的倉庫管理軟件...
    zlcook閱讀 10,654評論 0 32
  • 目前在看nexus私服章節的知識時需要用到倉庫與鏡像的知識,正好通過簡書把倉庫和鏡像章節的筆記整理一下 倉庫 ma...
    小煉君閱讀 1,321評論 0 48
  • 1. 導入新maven項目后,pom.xml可能出現以下情況 ( MyEclipse ) 解決方法:1、項目右鍵-...
    墨白找閱讀 4,167評論 0 0
  • Spring Boot 參考指南 介紹 轉載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,970評論 6 342