遇到过这样一个问题:
使用第三方的插件,但是插件在定义自身依赖时,使用[version+]策略,导致永远下载最新的依赖,但是该插件所指定仓库并没有最新版本的依赖,从而导致构建失败。
解决方案:Gradle强制依赖解析策略,指定某个依赖必须是这个版本。
apply plugin: 'java' //so that there are some configurations
configurations.all {
resolutionStrategy {
// fail eagerly on version conflict (includes transitive dependencies)
// e.g. multiple different versions of the same dependency (group and name are equal)
failOnVersionConflict()
// force certain versions of dependencies (including transitive)
// *append new forced modules:
force 'asm:asm-all:3.3.1', 'commons-io:commons-io:1.4'
// *replace existing forced modules with new ones:
forcedModules = ['asm:asm-all:3.3.1']
// add dependency substitution rules
dependencySubstitution {
substitute module('or