Gradle 未包括渐变冲突的可传递依赖项

Gradle 未包括渐变冲突的可传递依赖项,gradle,Gradle,我有一个依赖项,myproject使用两个依赖项,它们使用不同版本的commons-lang3,但是当我构建war工件时,commons-lang3不包含在工件中。有什么不对劲吗 我的build.gradle看起来像: apply plugin: 'io.spring.dependency-management' apply plugin: 'java' apply plugin: 'maven-publish' apply plugin: 'war' buildscript { re

我有一个依赖项,
myproject
使用两个依赖项,它们使用不同版本的
commons-lang3
,但是当我构建
war
工件时,
commons-lang3
不包含在工件中。有什么不对劲吗

我的
build.gradle
看起来像:

apply plugin: 'io.spring.dependency-management'
apply plugin: 'java'
apply plugin: 'maven-publish'
apply plugin: 'war'

buildscript {
    repositories { 
        jcenter() 
    }
    dependencies { 
        classpath 'io.spring.gradle:dependency-management-plugin:0.3.0.RELEASE' 
    }
}

compileJava {
    sourceCompatibility = 1.7
    targetCompatibility = 1.7
}

configurations.all { 
    exclude group: 'commons-logging' 
}

repositories { 
    jcenter() 
    maven {
        credentials {
            username = "${artifactory_user}"
            password = "${artifactory_password}"
        }

        url "myrepo.com"
    }
}

dependencyManagement {
    imports { 
        mavenBom 'io.spring.platform:platform-bom:1.1.2.RELEASE' 
    }
}

dependencies {
    compile "my.project:my-project:1.0.0-SNAPSHOT"

    // Spring Framework
    compile 'org.springframework:spring-context'
    compile 'org.springframework:spring-web'
    compile 'org.springframework:spring-webmvc'
    compile 'org.springframework.security:spring-security-config'
    compile 'org.springframework.security:spring-security-web'

    // Jackson
    compile "com.fasterxml.jackson.core:jackson-annotations"
    compile "com.fasterxml.jackson.core:jackson-core"
    compile "com.fasterxml.jackson.core:jackson-databind"

    // Logging
    compile 'ch.qos.logback:logback-classic'
    compile 'org.slf4j:slf4j-api'
    runtime 'org.slf4j:jcl-over-slf4j'
    runtime 'org.logback-extensions:logback-ext-loggly:0.1.2'

    // Test
    testCompile 'junit:junit'
    testCompile 'org.mockito:mockito-core'
    testCompile 'org.springframework:spring-test'

    providedCompile 'javax.servlet:javax.servlet-api'
}

publishing {
    publications {
        mavenJava(MavenPublication) {
            from components.web
        }
    }
    repositories {
        maven {
            credentials {
                username = "${artifactory_user}"
                password = "${artifactory_password}"
            }

            if(project.version.endsWith('-SNAPSHOT')) {
                url "myrepo.com/libs-snapshot-local"
            } else {
                url "myrepo.com/libs-release-local"
            }
        }
    }
}

task wrapper(type: Wrapper) { 
    gradleVersion = '2.4' 
}
编辑
my.project的依赖关系图:my project

myproject
是我的同事编写的一个库项目,它依赖于另外两个包含
commons-lang3
的库项目。下面是一个示例图

my.project:my-project:1.0.0-SNAPSHOT
+---my.project:my-dependency-1:1.0.0
|   +---org.apache.commons:commons-lang3:3.4
+---my.project:my-dependency-2:1.0.0
    +---org.apache.commons:commons-lang3:3.3.2

我将spring gradle dependency management插件更新为0.5.2.RELEASE,解决了我的问题。

我必须删除Maven存储库声明,并删除对
my.project:my project:1.0.0-SNAPSHOT的依赖,才能在本地构建它。当我运行
dependencies
时,输出不包含
commons-lang3
(或任何其他commons-langjar)。您希望哪个依赖项依赖于Commons Lang?@JohanStuyts查看我的编辑,查看
my project