当前位置: 首页 > 知识库问答 >
问题:

在Spock1.1中模拟时得到“VerifyError”

裴建华
2023-03-14

当我尝试模拟spring服务时,我得到了verifyError。我已经检查了spock版本和groovy版本,看起来没有问题。有人能告诉我如何解决这个问题吗?谢谢

>

  • Spock版本:spock-core-1.1-groovy-2.4-rc-3.jar
  • Groovy版本:groovy-all-2.4.6.jar
  • Cglib版本:cglib-nodep-3.2.4.jar

    Java语言lang.VerifyError:类net。旧金山。cglib。果心DebuggingClassWriter重写最终方法访问。(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)java的V。lang.ClassLoader。java上的defineClass(ClassLoader.java:763)。安全SecureClassLoader。java上的defineClass(SecureClassLoader.java:142)。网URLClassLoader。java上的defineClass(URLClassLoader.java:467)。网URLClassLoader。在java上访问100美元(URLClassLoader.java:73)。网URLClassLoader 1美元。在java上运行(URLClassLoader.java:368)。网URLClassLoader 1美元。在java上运行(URLClassLoader.java:362)。网URLClassLoader。java上的findClass(URLClassLoader.java:361)。lang.ClassLoader。sun的loadClass(ClassLoader.java:424)。杂项。启动器$AppClassLoader。java上的loadClass(Launcher.java:331)。lang.ClassLoader。net上的loadClass(ClassLoader.java:357)。旧金山。cglib。果心AbstractClassGenerator。(AbstractClassGenerator.java:38)位于net。旧金山。cglib。果心KeyFactory$生成器。(KeyFactory.java:127)at net。旧金山。cglib。果心KeyFactory。在net上创建(KeyFactory.java:112)。旧金山。cglib。果心KeyFactory。在net上创建(KeyFactory.java:108)。旧金山。cglib。果心KeyFactory。在net上创建(KeyFactory.java:104)。旧金山。cglib。代理增强剂。(Enhancer.java:69)位于org。spockframework。嘲弄运行时。ProxyBasedMockFactory$CglibMockFactory。在org上创建mock(ProxyBasedMockFactory.java:144)。spockframework。嘲弄运行时。ProxyBasedMockFactory。在org上创建(ProxyBasedMockFactory.java:66)。spockframework。嘲弄运行时。JavaMockFactory。在org上创建内部(JavaMockFactory.java:59)。spockframework。嘲弄运行时。JavaMockFactory。在org上创建(JavaMockFactory.java:40)。spockframework。嘲弄运行时。CompositeMockFactory。在org上创建(CompositeMockFactory.java:44)。spockframework。lang.SpecInternals。在org上创建mock(SpecInternals.java:45)。spockframework。lang.SpecInternals。在org上创建mockimpl(SpecInternals.java:281)。spockframework。lang.SpecInternals。com上的MockImpl(SpecInternals.java:99)。实例Apimpl公司。查询UserAccountAuthQueryServiceSpec。设置(UserAccountAuthQueryServiceSpec.groovy:86)

  • 共有1个答案

    邹嘉致
    2023-03-14

    cglib不再是主动维护的,它在处理较新的字节码时存在一些问题。如果使用较新版本,Spock能够使用Byte-Buddy生成代码。只需将其放在类路径上即可使用。

     类似资料:
    • 问题内容: 我正在开发一个Web应用程序,该应用程序显然在iOS设备中存在问题。问题是我不拥有iOS设备,而是在Linux Ubuntu中进行开发。我正在寻找一种在Linux(尤其是浏览器)中仿真/模拟此OS的方法,但是还没有找到任何东西。 到目前为止,我发现的是iOS SDK的Simulator,但这是针对Mac的。还有一些Windows模拟器。有人做过吗? 问题答案: 我能想到的唯一解决方案是

    • 我知道Dan North设计BDD的意图之一是将词汇表从复杂的测试域中移开。然而,在实现由外到内的方法时,我们似乎仍然需要对模仿行为(或者,如果您愿意的话)有一些了解。North在这个视频中建议,如果我从最外层的域对象开始,然后向内工作,我会在发现合作者时模仿它们,然后用适当的实现替换它们。所以最后,我以一组端到端测试结束。 Martin Fowler在这篇博客文章中定义了TDD的两个阵营:“古典

    • null 如上所示,它导出了一些命名函数,而且重要的是 使用了 。 开玩笑地说,当我为 编写单元测试时,我希望模拟 函数,因为我不希望 中的错误影响我为 编写的单元测试。我的问题是我不确定最好的方法是: 如有任何帮助/洞察力,我们将不胜感激。

    • 我试图找出为什么在模拟器(iPhone、Nexus、Nexus5,...skins)和在Android真实设备上使用以下代码会有不同的行为(我的目标是在背景图像上绘制文本,并以背景图像分辨率保存整个文本): 请注意GUI是由设计器完成的。 下面是我调用的在图像上绘制文本的方法 任何帮助都将不胜感激! 干杯,

    • 我在LabVIEW中有一个控制和仿真循环结构,它向Multisim模型发送输入并从Multisim模型接收输出。我想测量Multisim模型的两个布尔输出变为true时的仿真时间差。我可以添加一个Control&Simulation->Simulation->Utilities->Simulation Time小部件,并将其连接到前面板上的一个指示器上,并在运行它时看到仿真时间的进展,但我无法找到