如何在我的android库中包含依赖项

glo*_*gic 7 java android android-gradle-plugin

我正在编写一个android sdk,我现在想分发它,但我的依赖项存在问题.我正在使用gradle和android studio.

我的sdk依赖于volley和gson,我将它们添加为我的sdk中的jar.当我试图在一个单独的客户端应用程序中创建一个aar或jar时,我总是会遇到崩溃,因为我的sdk试图引用齐射,因为它没有包含在aar或jar中.关于我应该怎么做的任何想法?我已经研究过制造肥胖罐子并取得了很大的成功.

我也尝试过使用下面的远程依赖项,但即使在客户端应用程序中进行gradle构建之后,仍然不包括volley和gson.这是我目前在sdk build.gradle中的内容

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.mcxiaoke.volley:library-aar:1.0.0'
    compile 'com.google.code.gson:gson:2.3'
}
Run Code Online (Sandbox Code Playgroud)

然后在客户端构建gradle我有

repositories {
    flatDir {
        dirs 'libs'
    }
}


dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile(name:'mysdk-1.0.0', ext:'aar')
}
Run Code Online (Sandbox Code Playgroud)

我正在使用./gradlew clean build构建我的sdk的aar和jar任何人都可以告诉我在我自己的lib中包含依赖项的正确方法吗?

joe*_*ugh 1

在您的客户端中,更改您的依赖项块,如下所示:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile(name:'mysdk-1.0.0', ext:'aar') {
        transitive = true
    }
}
Run Code Online (Sandbox Code Playgroud)

这也应该会引入您的传递依赖项。

  • 这对我不起作用。AAR 文件中是否包含依赖信息?不需要POM文件吗? (2认同)