我的Maven2之旅:九.使用Maven一次编译多个工程.

时间:2022-02-09 13:54:11

 如果我们有许多Maven工程需要编译,如果一个个敲命令怕要累死,写批处理又有点不太正规,幸好Maven采用了Module节点解决了我们的问题,可以通过一次命令编译打包所有的包.

下图中的MavenA和MavenB是两个需要编译打包的工程,MavenModules是它们的上级工程.
我的Maven2之旅:九.使用Maven一次编译多个工程.

MavenA和MavenB的pom.xml一点也不需要改变,而MavenModules中的pom.xml如下:

 

我的Maven2之旅:九.使用Maven一次编译多个工程.< project  xmlns ="http://maven.apache.org/POM/4.0.0"  xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
我的Maven2之旅:九.使用Maven一次编译多个工程.  xsi:schemaLocation
="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd" >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< modelVersion > 4.0.0 </ modelVersion >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< groupId > com.sitinspring </ groupId >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< artifactId > MavenModules </ artifactId >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< packaging > pom </ packaging >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< version > 1.0.0 </ version >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< name > MavenModules </ name >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< url > http://www.blogjava.net/sitinspring </ url >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
< modules >
我的Maven2之旅:九.使用Maven一次编译多个工程.    
< module > ModuleA </ module >
我的Maven2之旅:九.使用Maven一次编译多个工程.    
< module > ModuleB </ module >
我的Maven2之旅:九.使用Maven一次编译多个工程.  
</ modules >
我的Maven2之旅:九.使用Maven一次编译多个工程.
</ project >

通过观察可以发现,有两点不同:
1.package节点设定为pom而不是jar,war等,这是主工程必需的,否则执行命令必报错.
2.添加了modules节点和其下的两个module节点,节点名正好是子目录,这样在MavenModules目录下执行compile,package等命令就会深入子目录去继续执行.

挺简单的,基本就是这么多.

注:转自http://www.blogjava.net/sitinspring