我的项目与其他项目有多个依赖关系。
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>group1</groupId>
<artifactId>artifact1<artifactId>
<name>RealtyRegistry</name>
<packaging>war</packaging>
<version>1.0.0-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>group1</groupId>
<artifactId>artifact2</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>group1</groupId>
<artifactId>artifact3</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
都是我同时开发的。我将版本添加到所有项目的文件中,我需要与相关项目一起构建主项目。对于没有树结构的项目如何做到这一点?
项目层次结构可以有2个或更多的覆盖树,例如:A依赖于B,C; D 依赖于 C,E; A和D相互独立。
最佳答案
您可以使用“模块”一起构建多个项目。通常,您可以通过使用 <packaging>pom</packaging>
创建一个“母”项目来完成此操作。并使用 <modules>
添加您的真实项目作为模块标签。然后,当您构建“母”项目时,所有模块都会按正确的顺序自动构建。
这是来自 Maven by Example 的示例书:
<groupId>org.sonatype.mavenbook.multi</groupId>
<artifactId>simple-parent</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<modules>
<module>simple-weather</module>
<module>simple-webapp</module>
</modules>
请注意,这要求您将模块放在相应命名的子文件夹中。例如,您将在某个文件夹中拥有“母亲”pom:
/.../my-project/
和以下模块:
/.../my-project/simple-weather/
/.../my-project/simple-webapp/
有关详细信息,请阅读 Chapter 6. A Multi-module Project这本书的一部分,可以在 Sonatype 网站上免费获得。
关于java - 如何让maven构建依赖项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13195767/