如何在AndroidStudio中导出Jar包,并且自定义Exclude文件
Posted TonyW92
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在AndroidStudio中导出Jar包,并且自定义Exclude文件相关的知识,希望对你有一定的参考价值。
作为一个从Eclipse过渡到android Studio的Android开发,我相信每个人或多或少都有这么一个疑问,Android Studio没什么没有直接export Jar包的功能。在Eclipse中是如此的简便,但作为Ecplise的替代品Android Studio确没有这个功能。网上有很多Gradle的脚本用来执行导出Jar的功能。目前最流行的是
task clearJar(type: Delete)
delete 'build/libs/yutils.jar'
task makeJar(type: Copy)
from('build/intermediates/bundles/release/')
into('build/libs/')
include('classes.jar')
rename ('classes.jar', 'yutils.jar')
makeJar.dependsOn(clearJar, build)
直接把build/intermediates/bundles/release/路径下的classes.jar换个名字换个路径导出。但是在classes.jar中有BuildConfig和R文件是我所不希望存在的,并且也没有META-INF/MAINFEST.MF清单文件存放一些我需用的信息
所以我们可以用已编译完的class文件自己压缩成jar包,可以根据需求个性定制
//生成jar包
task makeJar(type: org.gradle.api.tasks.bundling.Jar)
delete 'build/libs/pluginsdk.jar'
baseName 'pluginsdk'
from('build/intermediates/classes/release/')
//千万注意,这里 的into空着就行,不然在你的jar包中会多一层目录
into('')
//不想要的文件统统exclude
exclude('**/R.class')
exclude('**/BuildConfig.class')
exclude it.name.startsWith('R$');
如果有exclude需求的同学可以试试我提供的这种方法
以上是关于如何在AndroidStudio中导出Jar包,并且自定义Exclude文件的主要内容,如果未能解决你的问题,请参考以下文章
androidstudio中导入的jar包没有主清单属性怎么办