Gradle无法解决bintray的依赖关系

时间:2016-12-19 13:29:12

标签: android gradle dependencies bintray

我已将库上传到bintray,但当我尝试在我的项目中使用它时,gradle构建失败,错误:(26,13)无法解析:com.ymirski.library:date-utils:0.0.1

这是我的app build.gradle依赖项:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    testCompile 'junit:junit:4.12'
    compile 'com.ymirski.library:date-utils:0.0.1'
}

project build.gradle:

allprojects {
    repositories {
        jcenter()
        maven {
            url  "http://droidlab.bintray.com/maven"
        }
    }
}

我从bintray获得的所有数据: enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

我认为你没有正确发布你的图书馆。如果您像在Gradle中一样指定依赖项,则它期望找到JAR文件,而不是AAR文件。如果Gradle支持依赖于AAR文件(我不进行Android开发),您可能必须使用compile 'com.ymirski.library:date-utils:0.0.1@aar'明确声明您需要AAR。但即便如此,它也行不通,这让我觉得你没有正确地在Bintray上发布。但由于我对Bintray也不熟悉,所以我无法告诉你到底出了什么问题。

答案 1 :(得分:1)

对我有用的网址是:

allprojects {
    repositories {
        ...
        maven {
            url  "https://dl.bintray.com/your-bintray-username/maven"
        }
    }
}

将此添加到项目级别的build.gradle文件中。还要在URL中用您的Bintray用户名替换“您的Bintray用户名”。

现在在您的应用程序级别build.gradle中,将库编译为:

dependencies {
    ...
    implementation 'your.group.id:your.artifact.id:version'
}

希望这会有所帮助。