gradle - groovy-macro 在 2.5.8 版本中加载,您正在尝试加载 2.5.12 版本
问题描述
我正在使用带有 Groovy 编译器 2.5 和 Spock 2.0-M2 的插件的 Eclipse 4.13 版本 4.0.0。
我们正在使用 Gradle 来管理我们的依赖项。最近我们将我们的 Groovy 库更新到 2.5.12,从那时起执行 Spock 测试时,我们收到以下错误:
groovy-macro 在 2.5.8 版本中加载,您正在尝试加载 2.5.12 版本
似乎 Spock 正在获取可传递的 2.5.8 版本。我正在考虑避免 Spock 获取 2.5.8,但只是手动修改执行 Spock 测试的项目的类路径并确保所有 Groovy 库都是 2.5.12 版本似乎没有帮助,因为我得到了相同的错误。
解决方案
我对 maven 项目、gmaven 插件和 spock 1.3 也有同样的问题。
我使用 maven 依赖管理并导入groovy-bom
来解决版本冲突,但这无济于事。
您必须使用与 spock 所依赖的完全相同的 groovy 版本。
对于 spock 2.0-M2,gradle.build
说:
if (variant == 2.5) {
groovyVersion = "2.5.8"
minGroovyVersion = "2.5.0"
maxGroovyVersion = "2.9.99"
} else if (variant == 3.0) {
groovyVersion = "3.0.0"
minGroovyVersion = "3.0.0"
maxGroovyVersion = "3.9.99"
} else {
throw new InvalidUserDataException("Unknown variant: $variant. Choose one of: $variants")
}
尽管打印了正确的版本,但我不知道为什么groovy-macro
要加载另一个。mvn dependency:tree
groovy-macro
推荐阅读
- python - setuptools 不安装设置要求
- javascript - 在 socket.io 上添加事件侦听器以节省资源的最佳方法
- r - 根据模式提取R中的元素
- python - 在 python 中切片列表时迭代地跳过 n 个元素
- arrays - jq - 为数组的值添加前缀
- amazon-web-services - Google Domain 和 AWS S3 静态页面
- flutter - 运行flutter app时“任务':app:mergeDebugJavaResource'的执行失败。”的可能解决方案是什么
- javascript - Woocommerce:如何在标题上显示产品属性名称和类别名称
- performance - 按组matlab计算观察次数
- python - 有没有办法修改传递给 seaborn 中 facetgrid 的数据框?