具有Mockito的Powermock-依赖关系问题

问题描述 投票:0回答:1

我正在使用以下依赖项:

  • mockito核心:2.8.47
  • powermock-api-mockito2:2.0.2
  • powermock-module-junit4:2.0.2

这是我的pom:

<dependency>
  <groupId>org.powermock</groupId>
  <artifactId>powermock-module-junit4</artifactId>
  <version>${powermock.version}</version>
  <scope>test</scope>
</dependency>
<dependency>
  <groupId>org.powermock</groupId>
  <artifactId>powermock-api-mockito2</artifactId>
  <version>${powermock.version}</version>
  <scope>test</scope>
</dependency>

具有以下属性:

<properties>
  <powermock.version>2.0.2</powermock.version>
</properties>

现在,当我运行一些单元测试时,我得到:

Caused by: java.lang.NoSuchMethodError: org.mockito.MockitoFramework.getPlugins()Lorg/mockito/plugins/MockitoPlugins;
    at org.powermock.api.mockito.mockmaker.MockMakerLoader.doLoad(MockMakerLoader.java:45)
    at org.powermock.api.mockito.mockmaker.MockMakerLoader.load(MockMakerLoader.java:36)
    at org.powermock.api.mockito.mockmaker.PowerMockMaker.<init>(PowerMockMaker.java:36)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at java.lang.Class.newInstance(Class.java:442)

我在这种情况下有点失落-仍然遇到相同的情况:更改依赖项之一的版本,并且缺少某些东西:/

我正在使用此网站选择依赖项版本:https://github.com/powermock/powermock/wiki/Mockito-2-Maven有人可以帮助我,告诉我选择带有版本的适当工件的步骤是什么吗?

感谢您的帮助:)

junit mockito powermock
1个回答
0
投票

添加任何依赖项时,请检查将添加的已编译依赖项

例如-如果要添加powermock-api-mockito版本-1.7.4

https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2/2.0.2

始终选择正确的稳定版本和最常用的版本,转到上面的url并看到如下所示

enter image description here

在页面上向下滚动-您将看到它正在自动添加-在依赖关系下

enter image description here

现在,我认为您很容易找出依赖关系。

注意-这里显示的是不同版本的

mockito-core:2.8.47-> 2.23.0

© www.soinside.com 2019 - 2024. All rights reserved.