Spock框架与Grails 1.3.8中的其他插件存在冲突

时间:2012-06-04 16:40:38

标签: grails spock

我在Grails 1.3.8应用程序上安装了Spock。运行test-app后失败。它似乎与我的其他插件有一些冲突,但我无法弄明白。我安装了20多个插件。

错误是:

     org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
     Could not instantiate global transform class  
     org.spockframework.compiler.SpockTransform specified at jar:file:
     /C:/Documents%20and%20Settings/xxxxxxx/.ivy2/cache/org.spock
     framework/spock-core/jars/spock-core-0.6-groovy-1.8.jar!/META-INF/services  
     /org.codehaus.groovy.transform.ASTTransformation  because of exception 
     org.spockframework.util.IncompatibleGroovyVersionException: The Spock 
     compiler plugin cannot execute because Spock 0.6.0-groovy-1.8 is not compatible  
     with Groovy 1.7.8. For  more information,see http://versioninfo.spockframework.org
     Spock location: file:/C:/Documents%20and%20Settings/xxxxxx/.ivy2/cache
     /org.spockframework
     /spock-core/jars/spock-core-0.6-groovy-1.8.jar
     Groovy location: file:/C:/dev/Grails/grails-1.3.8/lib/groovy-all-1.7.8.jar

这是我的buildConfig:

dependencies {
    test "org.spockframework:spock-grails-support:0.6-groovy-1.7"
}
plugins {
    compile ":joda-time:1.4"
    compile ":excel-import:0.9.6"
    compile ":export:1.3"

    test(":spock:0.6") {
      exclude "spock-grails-support"
  }
}

如果我不安装任何插件,我可以毫无问题地运行spock测试。我不确定是否有一些特定的插件或某些关于Spock甚至是我做错的事情。

其他信息: 我发现由于某种原因,一个/多个插件会阻止Grails下载

斯波克-的grails-支持:0.6-常规-1.7

使用我的插件,Grails只下载了spock-grails-support:0.6-groovy-1.8而不是1.3.8所需的1.7。 所以现在我不确定是什么阻止了Grails下载依赖项。

感谢您的任何建议

1 个答案:

答案 0 :(得分:1)

似乎Joda-time插件依赖于Spock,虽然它在插件中将导出设置为false,但它迫使Grails下载spock-grails-support:0.6-groovy-1.8 in my应用。我有它排除spock,到目前为止似乎它的工作。

compile (":joda-time:1.4") { exclude "spock" }