Gradle错误地解析了依赖关系artifactId

时间:2015-07-04 00:02:30

标签: android maven gradle android-gradle jcenter

我有一个看起来像这样的依赖:

dependencies {
    apt 'io.sweers.barber:barber-compiler:1.3.0'
    compile 'io.sweers.barber:barber-api:1.3.0'
}

这种依赖关系确实存在于jcenter和mavenCentral中,但只要gradle解析它,它就会使用不正确的artifactId(删除“barber-”前缀)。

Error:Could not find io.sweers.barber:api:1.3.0.
Searched in the following locations:
    https://jcenter.bintray.com/io/sweers/barber/api/1.3.0/api-1.3.0.pom
    https://jcenter.bintray.com/io/sweers/barber/api/1.3.0/api-1.3.0.jar
    https://maven.fabric.io/public/io/sweers/barber/api/1.3.0/api-1.3.0.pom
    https://maven.fabric.io/public/io/sweers/barber/api/1.3.0/api-1.3.0.jar
    file:/Users/hsweers/dev/android/android-sdk/extras/android/m2repository/io/sweers/barber/api/1.3.0/api-1.3.0.pom
    file:/Users/hsweers/dev/android/android-sdk/extras/android/m2repository/io/sweers/barber/api/1.3.0/api-1.3.0.jar
    file:/Users/hsweers/dev/android/android-sdk/extras/google/m2repository/io/sweers/barber/api/1.3.0/api-1.3.0.pom
    file:/Users/hsweers/dev/android/android-sdk/extras/google/m2repository/io/sweers/barber/api/1.3.0/api-1.3.0.jar
Required by:
    MyAppProject.app:unspecified > io.sweers.barber:barber-compiler:1.3.0

如果依赖关系会正确解析为https://jcenter.bintray.com/io/sweers/barber/barber-api/1.3.0/barber-api-1.3.0.pom

如果有帮助,可以在此处找到该库:https://github.com/hzsweers/barber

1 个答案:

答案 0 :(得分:0)

原来问题出在我的库中,导致生成的pom让编译器模块使用api模块名而不是artifactId。暂时修改它