我在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下载依赖项。
感谢您的任何建议
答案 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" }