Spock和Groovy不兼容的问题解决

问题背景:

运行testng,失败,跟踪到原始的出错为:

 because of exception org.spockframework.util.IncompatibleGroovyVersionException: The Spock compiler plugin cannot execute because Spock 0.7.0-groovy-2.0 is not compatible with Groovy 1.8.6. For more information, see http://versioninfo.spockframework.org

尝试解决的办法:

1.  在testng工程的jar中删除groovy-all-1.8.6.jar,尝试无效,重新运行仍然报一样的错误

2.  根据出错信息,应该是版本相互不兼容导致的

     在工程中搜索“groovy”,发现有个业务子工程的pom文件中用到了spock,配置如下

        
            org.spockframework
            spock-core
            0.7-groovy-2.0
            test
        

   直觉是版本号太高。于是在http://grepcode.com/snapshot/repo1.maven.org/maven2/org.spockframework/spock-core/0.7-groovy-2.0/

   中发现了spock和groovy的兼容关系


解决办法:

  将spock依赖的版本号改低一点,兼容Groovy 1.8.6即可

        
            org.spockframework
            spock-core
            0.7-groovy-1.8
            test
        



你可能感兴趣的:(环境问题解决)