可以做到嗎?從多模塊pom構建單模塊
環境:多模塊pom由3個模塊組成:mm1,mm2,mm3。模塊mm2具有mm1作爲依賴關係。有可能沒有任何錯誤地構建父pom。
問題:是否可以在不將mm1安裝到本地存儲庫的情況下構建單個模塊mm2(即從mm2基本目錄運行maven)?
謝謝。
可以做到嗎?從多模塊pom構建單模塊
環境:多模塊pom由3個模塊組成:mm1,mm2,mm3。模塊mm2具有mm1作爲依賴關係。有可能沒有任何錯誤地構建父pom。
問題:是否可以在不將mm1安裝到本地存儲庫的情況下構建單個模塊mm2(即從mm2基本目錄運行maven)?
謝謝。
沒有自動安裝,但可以只建立選擇的項目。你需要建立多模塊(我假設你是這樣做的)。在反應堆模式下,每個命令需要從反應堆的根部運行。
所以你的情況:
mvn reactor:make -Dmake.folders=mm2
在它所依賴(MM1)這種情況下你建立平方毫米模塊和模塊。
相關鏈接:
從書中的例子,我只建項目堅持和他的依賴項目模型。其他項目不變與 mvn reactor:make -Dmake.folders=sample-persist
alt text http://www.sonatype.com/books/maven-book/reference/figs/web/running_aro-dependencies.png
其他有用的命令是reactor:make-dependents
其生成依賴於X.項目
這違背了Maven2的依賴原則。準確地做這件事的興趣是什麼?
然而,我們可以想象定義平方毫米的MM1依賴作爲system
依賴性:
<dependency>
<groupId>...</groupId>
<artifactId>mm1</artifactId>
<version>...</version>
<scope>system</scope>
<systemPath>../mm1/target/</systemPath>
</dependency>
這使我的眼睛出血:) – 2009-10-25 20:56:10
我不知道你的意思究竟是什麼的「而無需安裝MM1到本地資源庫」。你的意思是之前建立mm2或從未?
疑問,在Maven Tips and Tricks: Advanced Reactor Options博客中宣佈了新的編譯選項也許可以幫助:
使用Maven 2.1版本開始, 有新的Maven命令行 選項,讓你可以操縱 Maven將構建 多模塊項目的方式。這些新 選項是:
-rf, --resume-from Resume reactor from specified project -pl, --projects Build specified reactor projects instead of all projects -am, --also-make If project list is specified, also build projects required by the list -amd, --also-make-dependents If project list is specified, also build projects that depend on projects on the list
我是專門想爲-pl
和-am
選項。要構建模塊的子集上,從根目錄
$ mvn --projects mm2 --also-make install
下列但是,我不知道這個回答您的問題(這是不完全清楚對我來說)。
+1現在我看到,我沒有仔細閱讀您的文章,並寫了幾乎相同的答案。 – cetnar 2009-10-23 18:07:00
你魯道夫?你有免費的嗎? :D – 2009-10-23 13:21:35
對不起,什麼? :) – igorp1024 2009-11-04 16:35:47