當我打開一個POM文件並點擊底部的「Dependency Hierarchy」選項卡時,它給我提供了錯誤「Project read error」。它可以與同一工作區中的其他項目協同工作,而不是與其他項目一起工作。有任何想法嗎?在Eclipse中打開Maven POM文件依賴關係層次結構時出錯 - 「Project read error」
編輯
在迴應@ Yhn的答案。
- 按預期從命令行工作中在Eclipse之外運行編譯和包階段。它編譯應用程序並構建最終的WAR文件。
- Eclipse確實指向Maven settings.xml文件的默認位置,所以它應該知道在其中定義的自定義存儲庫(我的公司有它自己的Maven存儲庫)。
- 我可以從Eclipse打開和編輯POM文件,因此它必須具有對文件的讀/寫權限。
- 該項目未在Eclipse中配置爲Maven項目,所以我無法從Eclipse運行包階段(我只能從命令行運行它)。
我不知道是否有什麼關係的事實,我遇到了麻煩建設與Maven 3的項目,因爲顯然有些的傳遞依賴的配置Maven的1,這Maven 3 does not support(這是我的理論,無論如何,基於一些錯誤消息)。我可以與Maven 2生成項目,但我仍然得到消息,如下列:
Downloading: http://dist.codehaus.org/mule/dependencies/maven2/org/codehaus/xfie/bcprov-jdk14/133/bcprov-jdk14-133.pom
[INFO] Unable to find resource 'org.codehaus.xfire:bcprov-jdk14:pom:133' in repsitory mule (http://dist.codehaus.org/mule/dependencies/maven2)
它必須能夠但是找到這些相關性,因爲它下載JAR文件就好了,可以構建應用程序。似乎問題在於依賴關係沒有與它們關聯的POM文件,這也許是爲什麼它們不能與Maven 3一起使用。這也可能是我無法查看Eclipse中的依賴關係層次結構的原因。
EDIT 2
我進入 「配置>轉換爲Maven項目」 轉換的項目Maven項目。當我打開POM文件,我看到的錯誤:
ArtifactDescriptorException: Failed to read artifact descriptor for woodstox:wst (Click for 140 more)
(woodstox:WST是該項目的另一個傳遞依賴)。 「標記」視圖中出現一個錯誤,表明我的項目中每個依賴項和傳遞依賴項都存在。但是,我可以通過執行「Run As> Maven構建」來成功構建項目。 (編輯:這可能是因爲這個項目沒有Java源代碼,但是依賴關係的JAR正確地出現在最終的WAR中。)依賴層次依然給出了同樣的錯誤 - 「項目讀取錯誤」。
關於「無法找到資源」消息 - 但這隻適用於少數傳遞依賴項。該項目有更多的傳遞依賴項,但這些消息不會顯示給他們。看起來好像是,因爲依賴關係沒有POM文件,所以Maven在每次構建項目時都會嘗試搜索它們。這是正常的沒有POMs?
我該如何去得到一個回購管理器?這是否必須安裝在公司的Maven存儲庫中,或者可以將它安裝在您自己的工作站上?
如果我記得正確;當這種事情發生時,eclipse有一個maven控制檯顯示錯誤。你能否檢查一下這個控制檯是否顯示了任何有助於識別這個原因的東西? – Yhn
該項目是否可以通過控制檯正確編譯打包等? – khmarbaise
@YY你知道我怎麼打開那個控制檯嗎? – Michael