避免将.jar打包到Android库(.aar) [英] Avoid packing .jar into Android Library (.aar)

查看:289
本文介绍了避免将.jar打包到Android库(.aar)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 依赖关系{
... $我的项目是一个Android库,它依赖于Dropbox的android库。 b $ b提供了fileTree(dir:'../Libraries/Dropbox',包含:['* .jar'])
...
}



除了Gradle将Dropbox的所有.jar文件放入我的输出.aar文件,一切运行良好。

  MyLib.aar 
| -classes.jar
| -AndroidManifest.xml
| -...
| -libs
| -bcprov-jdk16-146.jar
| -commons-logging-1.1.1.jar
| -dropbox-android-sdk-1.6.1
| -json_simple- 1.1.jar

我该如何避免这种情况?

解决方案

类似这样的东西可能会帮助你:

  android.libraryVariants.all {变体 - > 
variant.outputs.each {输出 - >
def packageLib = output.getPackageLibrary()
packageLib.exclude('libs / externalLibrary.jar')
}
}

里面的android {}块


My project is an Android Library which depends on Dropbox's android library.

dependencies {
    ...
    provided fileTree(dir: '../Libraries/Dropbox', include: ['*.jar'])
    ...
}

Everything works well excepts Gradle puts all the .jar files from Dropbox into my output .aar file.

MyLib.aar
|-classes.jar
|-AndroidManifest.xml
|-...
|-libs
    |-bcprov-jdk16-146.jar
    |-commons-logging-1.1.1.jar
    |-dropbox-android-sdk-1.6.1
    |-json_simple-1.1.jar

How can I avoid this?

解决方案

something like this might help you:

android.libraryVariants.all { variant ->
    variant.outputs.each { output ->
        def packageLib = output.getPackageLibrary()
        packageLib.exclude('libs/externalLibrary.jar')
    }
}

inside android {} block

这篇关于避免将.jar打包到Android库(.aar)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆