我有两个项目,假设项目A和项目B。项目A对项目B有一个Maven依赖。这两个项目在同一个包中都包含类Test
。
现在当我导入的时候,
import com.my.package.Test;
在项目A中的另一个类中,我认为(在运行时)它使用的是项目B中的Test类,而不是同一项目中包含的类。
有没有人知道这是不是应该是这样的?
发布于 2013-03-12 10:48:34
您不应该有具有相同FQN-s (完全限定名称,例如com.foo.MyTest
)的类。拥有重复的类只会导致这类问题。从两个工件中的一个中删除类。然后使用maven-jar-plugin
to create a test-jar artifact,这样您就可以在两个项目之间共享您的类。
你也可以看看this SO answer。
发布于 2013-04-16 07:56:54
第一个类加载器获胜。maven中的Classloader顺序与依赖顺序相同,但您不能在不同的项目中拥有具有相同FQN的类。
https://stackoverflow.com/questions/15358988
复制相似问题