Maven 父子工程创建示例

本贴最后更新于 2690 天前,其中的信息可能已经时移世异

1.创建简单 maven 工程

创建好主工程后,删除 src 目录(创建 maven-archetype-site-simple 工程)
打开 pom.xml 将

<packaging>jar</packaging>

修改为

<packaging>pom</packaging>

,pom 表示它是一个被继承的模块。

2.创建好的模块会自动生成

<modules>modul_name</modules>

3.主工程 pom.xml

<modelVersion>4.0.0</modelVersion>
<groupId>com.student.demo</groupId>
  <artifactId>student-demo</artifactId>
  <version>1.0.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>student-demo</name>
  <url>http://maven.apache.org</url>

//groupId 跟 artifactId 为坐标

4.创建子工程(maven-archetype-webapp 工程)

修改 pom.xml 文件

把<groupId>XXX</groupId>和<version>1.0.0-SNAPSHOT</version>去掉
,加上<packaging>jar</packaging>

因为 groupId 和 version 会继承 student-demo 中的 groupId 和 version,

packaging 设置打包方式为 jar:如

1 <?xml version="1.0"?>
2 <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
4   <modelVersion>4.0.0</modelVersion>
5   <parent>
6     <groupId>com.student.demo</groupId>
7     <artifactId>student-demo</artifactId>
8     <version>1.0.0-SNAPSHOT</version>
9   </parent>
10   
11   <artifactId>student-service</artifactId>
12   <packaging>jar</packaging>
13 </project>

5.在 student-api 中继承父 pom 的依赖,并且直接引入

<modelVersion>4.0.0</modelVersion>
 5   <parent>
 6     <groupId>com.student.demo</groupId>
 7     <artifactId>student-demo</artifactId>
 8     <version>1.0.0-SNAPSHOT</version>
 9   </parent>
10   <artifactId>student-api</artifactId>

6.在 student-service 中添加继承依赖,添加对 student-api 的依赖。

 1 <?xml version="1.0"?>
  2 <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
  3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  4   <modelVersion>4.0.0</modelVersion>
  5   <parent>
  6     <groupId>com.student.demo</groupId>
  7     <artifactId>student-demo</artifactId>
  8     <version>1.0.0-SNAPSHOT</version>
  9   </parent>
 10   <artifactId>student-service</artifactId>
<dependencies>
13         <dependency>
 14             <groupId>com.student.demo</groupId>
 15             <artifactId>student-api</artifactId>
 16             <version>1.0.0-SNAPSHOT</version>
 17         </dependency>
</dependencies>

Maven 父子工程就已经构建完毕了,

  • Maven

    Maven 是基于项目对象模型(POM)、通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。

    186 引用 • 318 回帖 • 282 关注
  • pom
    3 引用 • 10 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...