Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gradle 如何设置渐变传递依赖项版本?_Gradle - Fatal编程技术网

Gradle 如何设置渐变传递依赖项版本?

Gradle 如何设置渐变传递依赖项版本?,gradle,Gradle,在我们的项目中,我们使用以下Groovy依赖项: compile("org.codehaus.groovy:groovy-all:2.5.8") +--- org.codehaus.groovy:groovy-all:3.0.6 | +--- org.codehaus.groovy:groovy:3.0.6 -> 2.5.10 | +--- org.codehaus.groovy:groovy-ant:3.0.6 -> 2.5.10 | |

在我们的项目中,我们使用以下Groovy依赖项:

compile("org.codehaus.groovy:groovy-all:2.5.8")
+--- org.codehaus.groovy:groovy-all:3.0.6
|    +--- org.codehaus.groovy:groovy:3.0.6 -> 2.5.10
|    +--- org.codehaus.groovy:groovy-ant:3.0.6 -> 2.5.10
|    |    +--- org.codehaus.groovy:groovy:2.5.10
|    |    +--- org.apache.ant:ant:1.9.13
问题在于此依赖项具有多个可传递依赖项,其中之一是:

org.apache.ant:ant 1.9.13
它有一些漏洞,需要升级到1.10.8版,他们已经修复了该版本。 当我将父groovy all:2.5.8升级到最新版本时,我仍然可以看到它得到了有问题的org.apache.ant:ant 1.9.13依赖项:

compile("org.codehaus.groovy:groovy-all:2.5.8")
+--- org.codehaus.groovy:groovy-all:3.0.6
|    +--- org.codehaus.groovy:groovy:3.0.6 -> 2.5.10
|    +--- org.codehaus.groovy:groovy-ant:3.0.6 -> 2.5.10
|    |    +--- org.codehaus.groovy:groovy:2.5.10
|    |    +--- org.apache.ant:ant:1.9.13

有没有办法强迫Gradle恢复我需要的版本?

你是不是碰巧使用了Spring依赖关系管理插件?Gradle不会自行降级版本,因此,您的依赖项肯定还有其他问题。我通过将所需版本的依赖项添加到依赖项列表中来解决这个问题,即添加org.apache.ant:ant:1.10.8-不确定这是否会覆盖依赖项,但我们的商业扫描工具对此很满意,所以我希望它能起作用。您是否碰巧使用了Spring依赖管理插件?Gradle不会自行降级版本,因此,您的依赖项肯定还有其他问题。我通过将所需版本的依赖项添加到依赖项列表中来解决这个问题,即添加org.apache.ant:ant:1.10.8-不确定这是否会覆盖依赖项,但我们的商业扫描工具对此很满意,因此我希望它能起作用。