2017-06-05 49 views
0

当我尝试模拟弹簧服务时,我得到verifyError。我有检查spock版本和groovy版本,这是seens没有问题。有人能指出我如何解决这个问题吗?谢谢!在模拟Spock1.1时得到'VerifyError'

  • 斯波克版本:斯波克核-1.1-常规-2.4-RC-3.jar
  • Groovy的版本:Groovy的全2.4.6.jar
  • CGLIB版本:CGLIB的nodep- 3.2.4.jar

    java.lang.VerifyError:class net.sf.cglib.core.DebuggingClassWriter重写最终方法访问(IILjava/lang/String; Ljava/lang/String; Ljava/lang/String; [ Ljava/lang/String;)在java.lang.ClassLoader.defineClass(ClassLoader.java:763) 的V 位于java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 在java.net.URLClassLoader.defineClass(URLClassLoader.java:467) 在java.net.URLClassLoader.access $ 100(URLClassLoader.java:73) 在java.net.URLClassLoader的$ 1.run(URLClassLoader.java:368) 在java.net.URLClassLoader的$ 1.run(URLClassLoader.java:362) 在java.net.URLClassLoader.findClass(URLClassLoader.java:361) 在java.lang.ClassLoader.loadClass(ClassLoader.java:424) 在sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at net.sf.cglib.core.AbstractClassGenerator。(AbstractClassGenerator.java: 38) at net.sf.cglib.core.KeyFactory $ Generator。(KeyFactory.java:127) at net.sf.cglib.core.Ke在net.sf.cglib.core.KeyFactory.create(KeyFactory.java:108) at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:104) 在net.sf.cglib.proxy.Enhancer。(Enhancer.java:69) 在org.spockframework.mock.runtime.ProxyBasedMockFactory $ CglibMockFactory.createMock(ProxyBasedMockFactory.java:144) 在org.spockframework.mock.runtime .ProxyBasedMockFactory.create(ProxyBasedMockFactory.java:66) 在org.spockframework.mock.runtime.JavaMockFactory.createInternal(JavaMockFactory.java:59) 在org.spockframework.mock.runtime.JavaMockFactory.create(JavaMockFactory.java:40 ) at org.spockframework.lang(CompositeMockFactory.java:44) at org.spockframework.lang .SpecInternals.createMock(SpecInternals.java:45) at org.spockframework.lang.SpecInternals.createMockImpl(SpecInternals.java:281) at org.spockframework.lang.SpecInternals.MockImpl(SpecInternals.java:99) at com .example.apiimpl.query.UserAccountAuthQueryServiceSpec.setup(UserAccountAuthQueryServiceSpec.groovy:86)

回答

1

CGLIB不再是积极维护和它有一个处理新的字节代码的一些问题。如果您使用更新的版本,Spock能够使用Byte Buddy进行代码生成。只需将它放在课程路径中即可使用它。

相关问题