使用Powermock时获取NoClassDefFoundError

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

我正在尝试将powermock与easymock结合使用以测试私有和静态方法。我已经从GITHUB下载了jar,并在build.gradle中添加了它们的依赖关系,但是当我运行测试用例时,我一直在获取NoClassDefFoundError。

这是gradle中的堆栈跟踪和依赖项:

java.lang.NoClassDefFoundError: org/powermock/reflect/spi/ProxyFramework
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.access$100(Unknown Source)
Caused by: java.lang.ClassNotFoundException: 
    org.powermock.reflect.spi.ProxyFramework
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)

testCompile group: 'org.powermock', name: 'powermock-core', version: '1.4.6'
testCompile group: 'org.powermock', name: 'powermock-module-junit4', version: '1.5.1'
testCompile group: 'org.easymock', name: 'easymock', version: '4.0.1'
testCompile group: 'cglib', name: 'cglib-nodep', version: '3.2.9'
testCompile group: 'org.hamcrest', name: 'hamcrest-core', version: '1.3'
testCompile group: 'junit', name: 'junit', version: '4.12'
testCompile group: 'org.objenesis', name: 'objenesis', version: '3.0.1'
testCompile group: 'org.powermock', name: 'powermock-api-easymock', version: '2.0.2'
compile group: 'org.javassist', name: 'javassist', version: '3.24.0-GA'
java powermock easymock
1个回答
0
投票

我“认为”您没有指定依赖项的范围。我不知道如何在Gradle中做到这一点,但是在Maven中,我们在依赖项声明中添加了“范围”测试“范围”。

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