2

我有 2 个项目,比如说项目 A 和项目 B。项目 A 对项目 B 有 Maven 依赖项。两个项目都包含Test同一个包中的类。

现在当我导入时,

import com.my.package.Test;

从项目 A 中的另一个类,我认为(在运行时)它使用项目 B 中的测试类,而不是同一项目中包含的类。

有谁知道这是否应该如何工作?

4

2 回答 2

4

您不应该拥有具有相同 FQN-s(完全限定名称,例如com.foo.MyTest)的类。拥有重复的类只会导致这类问题。从两个工件之一中删除该类。然后使用maven-jar-plugin 创建一个 test-jar 工件,以便您可以在两个项目之间共享您的类。

你也可以看看这个 SO answer

于 2013-03-12T10:48:33.700 回答
0

第一个类加载器获胜。maven 中的类加载器顺序与依赖顺序相同,但您应该在不同的项目中拥有具有相同 FQN 的类。

于 2013-04-16T07:56:54.170 回答