模拟@component

时间:2017-07-04 07:49:11

标签: spring spring-security mocking spock

我正在使用Spock with Spring,我在模拟我的一个组件类时遇到错误。

请找到下面的堆栈跟踪。 它只有这一点,因此我无法继续。 版本:

  • cglib-nodep:3.2.0
  • cglib:3.2.0
  • spock-core:1.0-groovy-2.4
  • spring-test:4.1.4.RELEASE

    java.lang.NoClassDefFoundError:无法初始化类org.spockframework.mock.runtime.ProxyBasedMockFactory $ CglibMockFactory $ ConstructorFriendlyEnhancer 在org.spockframework.mock.runtime.ProxyBasedMockFactory $ CglibMockFactory.createMock(ProxyBasedMockFactory.java:80) 在org.spockframework.mock.runtime.ProxyBasedMockFactory.create(ProxyBasedMockFactory.java:49) 在org.spockframework.mock.runtime.JavaMockFactory.create(JavaMockFactory.java:51) 在org.spockframework.mock.runtime.CompositeMockFactory.create(CompositeMockFactory.java:44) 在org.spockframework.lang.SpecInternals.createMock(SpecInternals.java:45) 在org.spockframework.lang.SpecInternals.createMockImpl(SpecInternals.java:281) at org.spockframework.lang.SpecInternals.MockImpl(SpecInternals.java:99) 在TermsAndConditionsControllerAPISpec.setup(TermsAndConditionsControllerAPISpec.groovy:19)

1 个答案:

答案 0 :(得分:0)

不确定为什么会发生这种情况,但我刚刚删除了cglib,它只是起作用了。 所以最终依赖列表是: cglib-nodep:3.2.0 spock-core:1.0-groovy-2.4 弹簧测试:4.1.4.RELEASE

我仍然不确定为什么这会通过删除cglib来解决。如果有人有详细原因请分享。