我必須聲明使用的開放式版本範圍上的另一個Maven構件的依賴,比如這一個Maven項目:Maven站點錯誤與版本範圍
<dependency>
<groupId>org.terracotta.toolkit</groupId>
<artifactId>terracotta-toolkit-1.0</artifactId>
<version>[1.0.0-SNAPSHOT,]</version>
</dependency>
(我知道這是在一定程度上要價對於使用這種版本範圍的麻煩,但對於這個特定的項目,我們有很好的理由這樣做。)
大多數情況下,這工作正常,但當試圖生成與「mvn網站」項目網站,我嘗試創建「依賴關係管理報告」時出現以下錯誤:
[INFO] Generating "Dependency Management" report. Downloading: http:/XXXXXXXXXX/content/groups/public/org/terracotta/toolkit/terracotta-toolkit-1.0/[1.0.0-SNAPSHOT,]/terracotta-toolkit-1.0-[1.0.0-SNAPSHOT,].pom
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Invalid uri 'http://XXXXXXXXXX/content/groups/public/org/terracotta/toolkit/terracotta-toolkit-1.0/[1.0.0-SNAPSHOT,]/terracotta-toolkit-1.0-[1.0.0-SNAPSHOT,].pom': escaped absolute path not valid
[INFO] ------------------------------------------------------------------------
[INFO] Trace java.lang.IllegalArgumentException: Invalid uri 'http://XXXXXXXXXX/content/groups/public/org/terracotta/toolkit/terracotta-toolkit-1.0/[1.0.0-SNAPSHOT,]/terracotta-toolkit-1.0-[1.0.0-SNAPSHOT,].pom': escaped absolute path not valid
正如您從消息中看到的那樣,它會嘗試使用開放式版本範圍規範而不是解析版本號構建URI,這當然會失敗。
任何人都可以告訴我,如果有解決方法嗎?
不錯,很高興你發現了一個問題和解決方案! – 2010-11-17 22:10:37