构建Maven多模块项目的方法可以分为以下步骤:
- 创建Maven父项目
在命令行下进入项目文件夹,执行以下命令:
mvn archetype:generate -DgroupId=com.example -DartifactId=my-parent-project -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false -DarchetypeCatalog=internal
其中-DgroupId
指定项目的groupId,-DartifactId
指定项目的artifactId。这个命令会在当前目录下创建一个名为my-parent-project
的项目文件夹,作为父项目。
- 在Maven父项目中添加子模块
在父项目的pom.xml中添加子模块:
<modules>
<module>module-1</module>
<module>module-2</module>
</modules>
- 创建Maven子模块
在命令行下进入父项目文件夹,执行以下命令:
mvn archetype:generate -DgroupId=com.example -DartifactId=module-1 -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false -DarchetypeCatalog=internal
这个命令会在父项目文件夹下创建一个名为module-1
的子模块文件夹。同样的,在父项目文件夹下再执行一次相同的命令,创建另一个子模块module-2
。
- 配置子模块的pom.xml
在每个子模块的pom.xml中添加对父项目的依赖:
<parent>
<groupId>com.example</groupId>
<artifactId>my-parent-project</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
然后在子模块的pom.xml中添加各自的依赖,这样就可以在各个子模块中分别定义自己的依赖了。
- 编译和打包项目
在命令行下进入父项目文件夹,使用以下命令编译和打包父项目及其子模块:
mvn clean install
这个命令会自动编译和打包父项目及其子模块,并将它们安装到本地仓库中。
- 示例1:在子模块中使用父项目的依赖
<!-- 父项目中的依赖 -->
<dependency>
<groupId>com.example</groupId>
<artifactId>parent-artifact</artifactId>
<version>${project.version}</version>
</dependency>
在子模块的pom.xml中,可以直接使用父项目中定义的依赖。由于在子模块的pom.xml中已经添加了对父项目的依赖,所以Maven会自动将父项目中的依赖传递给子模块。
- 示例2:在父项目中定义公共依赖
在父项目的pom.xml中,可以定义一些公共的依赖,例如:
<dependency>
<groupId>com.example</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
所有的子模块都可以继承父项目中的这些公共依赖,无需在每个子模块中都定义这些依赖。这样可以避免在各个子模块中多次定义相同的依赖,减少冗余。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:构建Maven多模块项目的方法 - Python技术站