1. 准备工作
- 第一步:创建maven项目
File——>New——>Project——>Maven——>Next,我这里创建的是maven_project_test
- 第二步:创建子项目
选中项目,右键——>Bew——>Module——>后续步骤同上;我这边创建了common、maven1、maven2。
此时common、maven1、maven2都是maven_project_test的子项目,maven_project_test
下的pom.xml文件如下:
<?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>maven</groupId>
<artifactId>maven_project_test</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>maven1</module>
<module>maven2</module>
<module>common</module>
</modules>
</project>
此时如果common目录下的java
文件夹不是蓝色的,则点击右键无法创建java文件
,标识common还没有被识别为java项目
,此时只要点击右边的maven
刷新即可,如下:
2.配置依赖关系
- maven1依赖common
- 给common配置groupId、artifactId、version,配置文件如下:
<?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_project_test</artifactId>
<groupId>maven</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>maven_common</groupId>
<artifactId>common</artifactId>
<version>1.0.0</version>
</project>
- 修改maven1的配置文件,添加对common的依赖,添加
dependencies
配置:
<?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_project_test</artifactId>
<groupId>maven</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>maven1</artifactId>
<dependencies>
<dependency>
<groupId>maven_common</groupId>
<artifactId>common</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
</project>
- 此时如果出现maven编译错误,可以尝试执行一下
install
测试依赖
- 在common下创建CommonTest,如下:
- 在maven1中引用,由于在maven1下的pom.xml文件中配置了对common的依赖,可以正常调用并执行。
- 在maven2中引用,由于maven2没有配置依赖,编译不通过。
- 在maven_project_tes中引用,即使common是maven_project_test的子项目,如果maven_project_test没有配置对common的依赖,也是无法直接引用的。