如果我們有許多Maven工程需要編譯,如果一個個敲命令怕要累死,寫批處理又有點不太正規,幸好Maven采用了Module節點解決了我們的問題,可以通過一次命令編譯打包所有的包.
下圖中的MavenA和MavenB是兩個需要編譯打包的工程,MavenModules是它們的上級工程.

MavenA和MavenB的pom.xml一點也不需要改變,而MavenModules中的pom.xml如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.sitinspring</groupId>
<artifactId>MavenModules</artifactId>
<packaging>pom</packaging>
<version>1.0.0</version>
<name>MavenModules</name>
<url>http://www.tkk7.com/sitinspring</url>
<modules>
<module>ModuleA</module>
<module>ModuleB</module>
</modules>
</project>
通過觀察可以發現,有兩點不同:
1.package節點設定為pom而不是jar,war等,這是主工程必需的,否則執行命令必報錯.
2.添加了modules節點和其下的兩個module節點,節點名正好是子目錄,這樣在MavenModules目錄下執行compile,package等命令就會深入子目錄去繼續執行.
挺簡單的,基本就是這么多.
例程下載:
http://www.tkk7.com/Files/sitinspring/MavenModules20070621135351.zip