Maven多模块管理的第二种实现方法-2

552 阅读1分钟

「这是我参与2022首次更文挑战的第26天,活动详情查看:2022首次更文挑战」。

接上篇继续说说Maven多模块管理的第二种实现方法

  • Add as module to:选择将创建的模块添加哪个模块
  • Parent:选择模块的父工程
  • GroupId:选择父工程后,默认继承父工程的 GroupId 值
  • ArtifactId:模块的项目名称
  • Version:选择父工程后,默认继承父工程的 Version 值

(4) 设置模块名称及存放位置

image.png

(5) 项目视图

image.png

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 项目结构

image.png

2.2.8 添加依赖

执行后效果:

在父工程的 dependencies 标签里添加 MySQL 依赖,子模块会无条件继承父工程所有依赖。

(1) 添加 MySQL 依赖前

image.png

(2) 添加 MySQL 依赖(父工程 pom 文件)

image.png

(3) 添加 MySQL 依赖后

image.png

2.2.9 父工程管理依赖版本号

同 2.1.9