我正在设置一个具有扁平结构的多模块项目,即父级和子级位于同一个基本目录中.父级定义为
<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>company</groupId>
<artifactId>parent</artifactId>
<packaging>pom</packaging>
<version>1-0-SNAPSHOT</version>
<name>child</name>
<modules>
<module>../child</module>
</modules>
(...)
Run Code Online (Sandbox Code Playgroud)
而它所定义的孩子
<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">
<parent>
<groupId>company</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>company</groupId>
<artifactId>child/artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>child</name>
(...)
Run Code Online (Sandbox Code Playgroud)
(公司和项目名称混淆)
发生的是模块(子)抱怨它找不到父,即:
Reason: Cannot find parent: company:child for project: company:child:war:1.0-SNAPSHOT for project company:child:war:1.0-SNAPSHOT
Run Code Online (Sandbox Code Playgroud)
有没有明显的解决方案,我错过了,或者建议使用扁平的项目结构?
编辑: 修正了一个错字.
Pas*_*ent 14
使用POM简介示例5中所述的<relativePath>元素:
<project>
<parent>
<groupId>company</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>.../parent/pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>company</groupId>
<artifactId>child</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>child</name>
...
</project>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6103 次 |
| 最近记录: |