我正在尝试从Grails 2.0.3升级到2.2.1,作为Happy Trails应用程序的一部分。
https://github.com/jamesward/happytrails/tree/grails2
我遇到的第一件事就是让Geb / Spock与Groovy 2一起工作。我在尝试安装插件或做任何事情时遇到以下错误。
| Resolving plugin JAR dependencies
| Error WARNING: Dependencies cannot be resolved for plugin [mail] due to error: startup failed:
Could not instantiate global transform class org.spockframework.compiler.SpockTransform specified at jar:file:/Users/mraible/.grails/ivy-cache/org.spockframework/spock-core/jars/spock-core-0.7-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.7.0-groovy-1.8 is not compatible with Groovy 2.0.7. For more information, see http://versioninfo.spockframework.org
我能够使用spock instructions for Grails 2.2解决此问题。
然而,现在我遇到了一个奇怪的错误,Grails似乎试图从本地存储库下载文章。
$ grails compile
| Configuring classpath
:: problems summary ::
:::: ERRORS
Server access Error: Connection refused url=http://localhost:8081/artifactory/plugins-releases-local/org/codehaus/geb/geb-spock/0.9.0-RC-1/geb-spock-0.9.0-RC-1.pom
Server access Error: Connection refused url=http://localhost:8081/artifactory/plugins-releases-local/org/codehaus/geb/geb-spock/0.9.0-RC-1/geb-spock-0.9.0-RC-1.jar
| Error Failed to resolve dependencies (Set log level to 'warn' in BuildConfig.groovy for more information):
- org.codehaus.geb:geb-spock:0.9.0-RC-1
到目前为止,这是我项目的差异:
答案 0 :(得分:0)
我无法为爱情或金钱重现,但我会猜测你在常春藤缓存中有陈旧的依赖信息。尝试将~/.grails/ivy-cache
移至/var/tmp
并运行grails compile
。如果可行,您可以保留原样,或者恢复旧缓存,只删除与geb相关的目录:
答案 1 :(得分:0)
现在我已经查看了项目的源代码,我将提出另一个建议:从application.properties
中删除所有插件条目,并将所需的内容添加到BuildConfig.groovy
。
我认为这里最大的问题是geb 0.7.0在application.properties
中声明,而0.9.0-RC-1在BuildConfig.groovy
中。您不需要svn
插件条目,因此请勿将其添加到BuildConfig.groovy
。而你必须将Searchable插件升级到0.6.4。
答案 2 :(得分:0)
尝试删除(重命名)〜/ .grails / 2.2.1