「这是我参与2022首次更文挑战的第26天,活动详情查看:2022首次更文挑战」。
接上篇继续说说Maven多模块管理的第二种实现方法
- Add as module to:选择将创建的模块添加哪个模块
- Parent:选择模块的父工程
- GroupId:选择父工程后,默认继承父工程的 GroupId 值
- ArtifactId:模块的项目名称
- Version:选择父工程后,默认继承父工程的 Version 值
(4) 设置模块名称及存放位置
(5) 项目视图
2.2.5 子模块 pom 文件
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>maven-parent</artifactId>
<groupId>com.abc.maven</groupId>
<version>1.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>maven-java-001</artifactId>
</project>
2.2.6 父工程 pom 文件
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.abc.maven</groupId>
<artifactId>maven-parent</artifactId>
<version>1.0.0</version>
<!--父工程包含的所有模块名称-->
<modules>
<module>maven-java-001</module>
</modules>
<packaging>pom</packaging>
<build>
<plugins>
<!-- 编译插件 -->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<!-- 插件的版本 -->
<version>3.5.1</version>
<!-- 编译级别 -->
<configuration>
<source>1.8</source>
<target>1.8</target>
<!-- 编码格式 -->
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
modules:父工程包含所有的子模块名称
2.2.7 项目结构
2.2.8 添加依赖
执行后效果:
在父工程的 dependencies 标签里添加 MySQL 依赖,子模块会无条件继承父工程所有依赖。
(1) 添加 MySQL 依赖前
(2) 添加 MySQL 依赖(父工程 pom 文件)
(3) 添加 MySQL 依赖后
2.2.9 父工程管理依赖版本号
同 2.1.9