我有项目B,它取决于项目A.
在项目B的pom.xml文件中,我将A依赖声明为:
<dependency>
<groupId></groupId>
<artifactId>A</artifact>
<version>1</version>
<scope>compile</scope>
</dependency>
但每次我对项目A进行任何更改时,我都必须在eclipse上运行maven install,将项目安装到我的用户存储库。
如何在构建和运行项目B之前确保构建和安装项目A?
答案 0 :(得分:0)
使用packaging = pom的模块来控制整个构建。在另一个Eclipse项目中,将其称为顶级项目,请使用此pom:
<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></groupId>
<artifactId>top-level</artifactId>
<version>1</version>
<packaging>pom</packaging>
<modules>
<module>../A</module>
<module>../B</module>
</modules>
</project>
然后在这个pom上执行你的maven操作(清理,安装等)。 Maven将找出处理模块的正确顺序。
一句警告:Maven使用文件系统访问A和B的相对pom位置。这仅在所有三个项目位于相同根目录(Eclipse工作区根目录,git repo根目录等)下时才有效。 。)