我想通过Maven使用powermock库的最后一个版本(1.6.5)。但是我的包无法编译,因为Maven发现了依赖收敛错误。下面您可以看到,在同一个依赖项org.objenesis:objenesis 中有两个不同版本的库
Dependency convergence error for org.objenesis:objenesis:2.1 paths to
dependency are:
+-mypackage:v1-SNAPSHOT
+-org.powermock:powermock-api-mockito:1.6.5
+-org.mockito:mockito-core:1.10.19
+-org.objenesis:objenesis:2.1
and
+-mypackage:v1-SNAPSHOT
+-org.powermock:powermock-api-mockito:1.6.5
+-org.powermock:powermock-api-mockito-common:1.6.5
+-org.powermock:powermock-api-support:1.6.5
+-org.powermock:powermock-reflect:1.6.5
+-org.objenesis:objenesis:2.2我试着做一个排除,但我不能只排除一个版本,我需要排除所有的,这并不是通过我的想法。
你也有同样的问题吗?我能做什么?
发布于 2016-05-28 08:35:33
objenesis, because two different libraries depends on two different version ofobjenesis`‘有两个不同的版本: PowerMock和Mockito。您有两个解决问题的选项:
org.objenesis:objenesis依赖项中排除PowerMock,并手动将其添加到pom中。mockito-core从PowerMock依赖项中排除出来,并将其作为分隔的规范添加到pom中,并排除objenesis。发布于 2017-07-25 07:47:43
我跟随亚瑟的回答,但只排除了objenesis对的依赖。在那之后,执行者插件很高兴。
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
<version>1.7.0</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.objenesis</groupId>
<artifactId>objenesis</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito2</artifactId>
<version>1.7.0</version>
<scope>test</scope>
</dependency>https://stackoverflow.com/questions/37463356
复制相似问题