我開始修復一個使用maven的java項目,同時我已經構建了項目,在運行時它失敗並且缺少依賴關係。我看了一下,錯誤遺漏了包含編譯時依賴的可選依賴。我可以通過並添加這些內容,但在我看來,我可以將所有的東西都構建並運行得很好,只是因爲我遺漏了一些代碼而使用了缺失的依賴關係,整個事情就會崩潰。Maven和可選的運行時依賴關係
我真正想知道的是,是否有發現,我選擇不包括可選依賴自動化的方式。我已經使用mvn dependency:tree
,但這隻顯示我擁有的依賴項(不確定它檢查的範圍),我試過mvn dependency:analyze
,但是這似乎表明它認爲我不使用的依賴項以及那些已被間接拉下的依賴項。我看不到的是如何查看我不包含的可選項列表。
目前我解決此工作的方法是閱讀勁歌,並嘗試從那裏工作了,但我不認爲這是特別強勁。
僅供參考,我是相當新的Maven的風格依賴管理和麪對它喜歡它,但是這件事可選是有點對我來說是絆腳石。我明白,可選項阻止了我將不會使用的依賴關係,但它沒有爲我單擊我如何可以研究哪些可選項可用並且我確實需要。
我使用Eclipse朱諾,m2eclipse的(也有行家3.0.5 CLI),java的6/7。
任何人有任何想法,我怎麼能做得更好,或者我完全忽略了什麼?
謝謝。今晚我會看看這個。 – 2013-04-16 15:14:30
K,另一個線程看起來很有趣,但並不能幫助我解決我的問題。如果這是我的代碼,我會有一些機會,但是在代碼中計算不屬於我的可選項僅僅是痛苦的。我喜歡mvn help:effective-pom。我仍然認爲,調查所需的依賴關係和識別可選項的poms似乎是我現在唯一的選擇。我會等待其他人是否有任何答案,然後考慮回答問題。 – 2013-04-16 19:12:10
耶 - 不是在這個意義上的答案:) 我偶然發現一個報告:http://maven.apache.org/plugins/maven-project-info-reports-plugin/dependency-convergence-mojo.html - 也許在報告部分有一些也提供了可選依賴關係的信息 – wemu 2013-04-17 08:55:48