从嵌套的同级模块导入时,Maven编译错误

前端之家收集整理的这篇文章主要介绍了从嵌套的同级模块导入时,Maven编译错误 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用多模块Maven项目,并尝试从嵌套在父代的一个孩子中的模块中导入依赖类
嵌套在同级模块中的模块.这是项目的简化层次结构:

@H_404_6@pom.xml (parent) |--A |--pom.xml |--C |--pom.xml |--src |--B |--pom.xml |--D |--pom.xml |--src

这是C模块中的一个类:

Dummy.java

@H_404_6@package com.xyz.A.C; import com.xyz.B.D.DummyDependency; public class Dummy { public static int callDependency(int num) { return dummyDependency.absoluteVal(num); } }

这是D模块中的一个类:

DummyDependency.java

@H_404_6@package com.xyz.B.D; public class DummyDependency { /** * Return the absolute value of a number. * @param num an integer */ public static int absoluteVal(int num) { if (num > 0) { return num; } else { return -num; } } }

当我运行mvn clean install时,出现类似于以下内容的编译错误

enter image description here

如何获得嵌套在子模块同级中的模块而没有编译错误

最佳答案
不要依赖构建顺序.如果模块D中的类需要使用模块C中的类,则应显式依赖它:

@H_404_6@<dependencies> <dependency> <groupId>com.xyz</groupId> <artifactId>A.C</artifactId> <version>${project.version}</version> </dependency> </dependencies>

猜你在找的Java相关文章