在我的 POM 中,有一个依赖项:spock-core 1.0-groovy-2.3,它将 groovy-all 2.3.10 添加到我的项目中。而且,我的 eclipse groovy 插件包含 groovy-all 2.3.7 jar。因此,每当我尝试运行我的 groovy 规范文件时,都会抛出以下错误:
groovy.lang.GroovyRuntimeException: Conflicting module versions. Module [groovy-all is loaded in version 2.3.7 and you are trying to load version 2.3.10
所以,为了匹配 jar ,我有两个选择:
- 降级spock-core依赖的版本
- 将 eclipse 插件 groovy-all jar 升级到 2.3.10
第一个选项是不可能的,因为没有这样的 spock-core 依赖项可以为我提供 groovy-all 2.3.7 jar。所以,请指导我如何将我的 groovy eclipse 插件从 2.3.7 升级到 2.3.10。
P.S. 我已经为我的项目将 groovy 编译器级别设置为 2.3。而且,我在 Luna、Kepler、Juno eclipse 上面临同样的问题。
最佳答案
您可以“降级”Spock 依赖项。只需将“groovy-all”排除项添加到您的 Spock 依赖项中即可。然后显式添加对 groovy-all 2.3.7 的依赖
排除可以添加为 follows :
<dependency>
...
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
</exclusion>
</exclusions>
...
</dependency>
关于java - eclipse 插件中存在的 'groovy-all' jar 与 maven 依赖项之间的兼容性问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29116091/