Android 如何将依赖项包含到.aar库中?
我正在使用Android Studio 1.4 我的项目中有一个模块在build.gradle中具有下一个依赖项:Android 如何将依赖项包含到.aar库中?,android,gradle,android-gradle-plugin,aar,Android,Gradle,Android Gradle Plugin,Aar,我正在使用Android Studio 1.4 我的项目中有一个模块在build.gradle中具有下一个依赖项: dependencies { provided fileTree(dir: 'libs', include: ['*.jar']) provided 'junit:junit:4.12' apply plugin: 'com.google.gms.google-services' provided 'org.apache.directory.stud
dependencies {
provided fileTree(dir: 'libs', include: ['*.jar'])
provided 'junit:junit:4.12'
apply plugin: 'com.google.gms.google-services'
provided 'org.apache.directory.studio:org.apache.commons.io:2.4'
provided 'com.google.android.gms:play-services:8.1.0'
provided 'com.fasterxml.jackson.core:jackson-databind:2.2.0'
provided 'com.fasterxml.jackson.core:jackson-core:2.2.0'
provided 'com.fasterxml.jackson.core:jackson-annotations:2.2.0'
}
构建projectn并同步gradle之后,我在module/build/outputs/aar文件夹中获取lib-release.aar。然后我尝试文件>新模块>导入JAR\a。然后,加入
compile project(':mylib-release')
在“外部库”树中,我只得到没有声明依赖项的包。如何仅通过编译我的库来启用这些软件包的自动安装?
提供的
意味着您将根据依赖项进行编译,但在运行时,系统将通过类加载器使这些软件包可用(它们不会捆绑在您的APK中)
通常您希望使用编译
,而不是提供的
。Android SDK本身就是一个提供了依赖关系的例子。如果您使用的是gradle,Android插件将在编译时提供该功能,您无需显式调用它。使用
compile fileTree(dir: 'libs', include: ['*.jar'])
而不是
provided fileTree(dir: 'libs', include: ['*.jar'])
为什么在依赖项闭包中有应用插件调用?