更新 spockframework 1.1 后出现 stockmap 错误

Getting stockmap error after updating spockframework 1.1

我想将 spockframework 从 1.0 更新到 1.1,因为这个修复 https://github.com/spockframework/spock/pull/100

应用程序运行于: 圣杯 2.4.5 Java7

我没有升级 grails 版本和 java 的权限。有人知道一个好的解决方法吗?

java.lang.VerifyError: Expecting a stackmap frame at branch target 56
Exception Details:
  Location:
    grails/test/spock/IntegrationSpec.initTransaction()Lorg/codehaus/groovy/grails/test/support/GrailsTestTransactionInterceptor; @42: ifeq
  Reason:
    Expected stackmap frame at this location.
  Bytecode:
    0000000: b800 3d4c 2b12 9932 1257 2b12 9a32 2ab9
    0000010: 0074 0200 b900 9d03 004d 2c57 2b12 9e32
    0000020: 2c2a b900 7803 00b8 0055 9900 0e2b 129f
    0000030: 322c b900 a102 0057 2c12 57b8 005d c000
    0000040: 57b0 01b0                     

我通过在 BuildConfig.groovy 文件中添加 useSplitVerifier 来解决问题。

因此构建配置文件如下所示:

grails.project.fork = [
test       : [... useSplitVerifier: true ...],
]
...
grails.project.dependency.resolution = {
...
    dependencies {
        ...
        test ("org.spockframework:spock-core:1.1-groovy-2.3")
        ...
    }
...
}