我有一個迄今用於編譯沒有問題的Maven項目。今天,當我運行mvn clean package -U
,我得到:Maven試圖下載'-sources.src'文物?
[錯誤]未能就項目的Myproj執行目標:無法解析項目org.myorg.myproj依賴關係:的Myproj:罐子:1.0快照:下面的文物無法解析:javax.servlet:javax.servlet-api:src:sources:3.0.1,org.eclipse.jetty:jetty-servlet:src:sources:8.1.2.v20120308,org.eclipse.jetty:jetty -server:src:sources:8.1.2.v20120308,org.eclipse.jetty:jetty-webapp:src:sources:8.1.2.v20120308,commons-io:commons-io:src:sources:2.4:找不到artifact javax.servlet:javax.servlet-api:src:sources:3.0.1 in MyRepo(http://maven.myorg.org:9001/nexus/content/repositories/myrepo/) - > [Help 1]
我試圖用一個新的本地Maven倉庫(rm -fr ~/.m2/repository
),但沒有任何區別。
爲什麼Maven試圖找到source
/src
工件?任何問題可能存在的想法?
編輯:我的依賴關係(如使用mvn help:effective-pom
所示)沒有任何source
分類器。例如,在錯誤消息中提到的jetty-server
的依賴內容如下:
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>8.1.2.v20120308</version>
<scope>compile</scope>
</dependency>
解決方案:隨着@AlessandroSantini的幫助和@布萊恩 - 摘心,我終於發現了問題。我的一個間接依賴項有<classifier>sources</classifier>
和<type>src</type>
。 (mvn help:effective-pom
沒有顯示這些間接依賴,並mvn dependency:tree
失敗,出現上述錯誤信息,也;最終,一個grep -r 'jetty-server' ~/.m2/repository/ -C 3
確定與搞砸依賴神器)
原來我自己SBT項目之一所需要的(不存在的)源工件:我使用SBT's withSources()
,我應該使用sbteclipe's EclipseKeys.withSource := true
來獲取Eclipse中的源代碼。
也許你可能包含你的pom.xml? –
顯然它看起來像你的依賴項中有一個「src」類型和一個「sources」限定符。 –
@AlessandroSantini,不確定:當我查看完整的依賴關係時,使用'mvn help:effective-pom',我沒有看到任何與源限定符的依賴關係(請參閱我的編輯)。 – Hbf