错误:原因:org.gradle.internal.component.external.model.DefaultModuleComponentSelector

时间:2017-01-08 02:45:52

标签: intellij-idea gradle spring-boot dependency-management

我的gradle.build

file for simple module is:
buildscript {
    ext {
        springBootVersion = '1.4.3.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

jar {
    baseName = 'client-app'
    version = '0.0.1-SNAPSHOT'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
}


dependencies {
    compile('org.springframework.cloud:spring-cloud-starter-feign')
    // https://mvnrepository.com/artifact/com.netflix.hystrix/hystrix-core
    compile('org.springframework.cloud:spring-cloud-starter-hystrix')
    compile("org.springframework.boot:spring-boot-starter-web"){
        exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging'
    }
    compileOnly('org.projectlombok:lombok')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

dependencyManagement {
    imports {
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:Camden.BUILD-SNAPSHOT"
        mavenBom "org.springframework.boot:spring-boot-starter-parent:${springBootVersion}"
    }
}

在关闭IDE(Intellij IDEA 2016)并重新打开之前,它运行良好。我收到如下错误:

Error:Cause: org.gradle.internal.component.external.model.DefaultModuleComponentSelector

当我尝试通过cmd运行时,我收到以下错误:

$ ./gradlew build
:client-app:compileJava
FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all dependencies for configuration 'detachedConfiguration2'.
> Could not resolve org.projectlombok:lombok:.
  Required by:
      hystrix-example:client-app:unspecified
   > Failed to resolve imported Maven boms: Could not find org.springframework.cloud:spring-cloud-dependencies:Camden.BUILD-SNAPSHOT.
     Searched in the following locations:
         https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-dependencies/Camden.BUILD-SNAPSHOT/maven-metadata.xml
         https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-dependencies/Camden.BUILD-SNAPSHOT/spring-cloud-dependencies-Camden.BUILD-SNAPSHOT.pom
         https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-dependencies/Camden.BUILD-SNAPSHOT/spring-cloud-dependencies-Camden.BUILD-SNAPSHOT.pom
     Required by:
         hystrix-example:client-app:unspecified
> Could not find org.springframework.cloud:spring-cloud-starter-feign:.
  Searched in the following locations:
      https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-starter-feign//spring-cloud-starter-feign-.pom
      https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-starter-feign//spring-cloud-starter-feign-.jar
  Required by:
      hystrix-example:client-app:unspecified
> Could not find org.springframework.cloud:spring-cloud-starter-hystrix:.
  Searched in the following locations:
      https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-starter-hystrix//spring-cloud-starter-hystrix-.pom
      https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-starter-hystrix//spring-cloud-starter-hystrix-.jar
  Required by:
      hystrix-example:client-app:unspecified
> Could not find org.springframework.boot:spring-boot-starter-web:.
  Searched in the following locations:
      https://repo1.maven.org/maven2/org/springframework/boot/spring-boot-starter-web//spring-boot-starter-web-.pom
      https://repo1.maven.org/maven2/org/springframework/boot/spring-boot-starter-web//spring-boot-starter-web-.jar
  Required by:
      hystrix-example:client-app:unspecified

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.


BUILD FAILED

Total time: 9.571 secs

我无法弄清楚解决方案。

我已经尝试gradle build --refresh-dependencies但是对我不起作用。 TIA寻求帮助。

1 个答案:

答案 0 :(得分:0)

最后,我在Issue #5564得到了解决方案。 :)

正如@wilkinson在回答这个问题时提到的那样,项目依赖于Spring Boot的依赖管理,版本解析失败了。

所以,我明确地将版本指定为:

   dependencies {
    compile('org.springframework.cloud:spring-cloud-starter-feign:1.2.3.RELEASE')
    // https://mvnrepository.com/artifact/com.netflix.hystrix/hystrix-core
    compile('org.springframework.cloud:spring-cloud-starter-hystrix:1.2.3.RELEASE')
    compile("org.springframework.boot:spring-boot-starter-web:1.4.3.RELEASE"){
        exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging'
    }
    compileOnly('org.projectlombok:lombok:1.16.12')
    testCompile('org.springframework.boot:spring-boot-starter-test:1.4.3.RELEASE')
}

它对我有用。 :)