我正在使用maven构建我的项目,比如utils_java。
项目结构是典型的src / main ...和src / tests ....
我在这个包中有一个类,需要一些复杂的设置和JNI等的使用。所以为了方便单元测试,我有一些名为mock_java的包,其中包含一个具有相同名称和包结构的伪/代理/模拟类。 / p>
pom.xml条目:
<dependency>
<groupId>com.test.my_mock_java</groupId>
<artifactId>my_mock_java</artifactId>
<version>0.0.1.14244.5</version>
<scope>test</scope>
</dependency>
我还检查了使用其他maven-antrun-plugin检查类路径。测试类路径包含此mock_java pkg的jar。
这对我不起作用。如果有两个包我们可以通过将它们放在pom.xml中的适当位置来控制它们的顺序是classpath。但是在这种场景中应该做些什么呢?当前项目中的一个类需要被其他包中的一个阴影只用于测试目的?
答案 0 :(得分:0)
依靠类路径中的顺序来影子类只是要求类。你无法控制的因素太多了。但是,如果没有关于实际用例的更多信息,则很难提供更好的建议。
答案 1 :(得分:0)
您是否尝试通过定义更多个人资料来解决问题?
您可以定义以下配置文件:
通过这种方式,您可以根据它们包含/排除依赖性