2016-01-12 99 views
0

我有一個多模塊maven項目('assembler'),我想添加一個FindBugs階段。如何配置maven多模塊項目和FindBugs?

問題是某些項目由於依賴於其他項目而無法獨立構建......但是,當我從「彙編程序」項目調用mvn package時,它工作正常,所有內部依賴關係都已解決。

問題是,當執行mvn findbugs:findbugs命令時,這些內部依賴關係未解析,並且maven抱怨。

搜索谷歌,我發現一種方法使它工作,使用mvn install,但我不喜歡這種方法,因爲最終這應該與詹金斯在CI中使用,我不想依賴本地maven回購構建服務器。

會欣賞您的想法。

謝謝。

回答

1

不要害怕mvn install,這是你的朋友。你需要的是建立一個集中的Maven倉庫(如Nexus或Artifactory)或租用你的Maven工件到其中的一個倉庫(比如Bintray)。

Jenkins或任何其他體面的CI引擎都可以爲您做本地或通過Maven的實際部署。部署完成後,其他用戶(包括Jenkins)將能夠解析他們的依賴關係,並且您將能夠運行FindBugs,PMD,JaCoco,主Javadoc或幾乎任何你想要的東西。

附註:不要被術語deploy弄糊塗了,因爲大多數人都是Maven新來的人。在Maven的情況下,它絕對是與您的目標環境無關。它只是意味着一個工件被推送到一個遠程倉庫而沒有別的。

+0

這並不是我所需要的,但最終我發現Jenkins擁有自己的臨時存儲庫,因此我將使用'mvn install'。不管怎麼說,還是要謝謝你。 –