我正在尝试使用具有远程依赖关系的gradle构建aar文件.下面是一个示例构建脚本.如您所见,我有两个依赖项.我遇到的问题是当我发布时,aar文件不包含远程依赖项,所以当我在其他项目中包含aar文件时,我得到NoClassDefFound错误.
我发现如果我将jar从我当地的maven repo复制到我项目中的libs文件夹,那么jar确实会包含在发布版本中.如何在aar文件中包含远程依赖项?我还在其他地方读到,这样运送依赖关系是不好的做法,所以如果有更好的方法来做我想做的事情,我就是为了它.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.+'
}
}
apply plugin: 'android-library'
repositories {
mavenCentral()
mavenLocal()
}
android {
... omitted for brevity
}
dependencies {
compile 'com.somepackage:someartifact:1.0'
compile 'com.anotherpackage:artifact:2.0'
}
Run Code Online (Sandbox Code Playgroud) 我正在使用Android Studio使用Gradle构建一个Android库项目.它有一些本地依赖:
compile project(':androidlibrary')
嵌套的附加外部依赖项:
compile group: 'com.google.guava', name: 'guava', version: '14.0.1'
我设法构建aar文件,但不包括外部或本地依赖项.我希望在发布到maven时POM文件中会提到外部依赖项,但本地的依赖项呢?
建立这样的项目的正确方法是什么?