Android Studio【通用&方便】插件方式打包jar(不包含资源文件)
来源:互联网 发布:linux命令日志文件 编辑:程序博客网 时间:2024/06/07 20:39
更通用更简便的AS 打jar包的方式(不包含资源文件)
前言
作为SDK的提供方,以前在eclipse上有一个叫 fatjar的插件。到了android studio上,我一直都是跑shell脚本去打包,但写的shell脚本总有一种难以下咽的感觉。今天终于在 简书上看到一个作者写了一个gradle 插件。用起来爽爽的,记录一下。
作者文章链接:http://www.jianshu.com/p/32cdfd323c56
步骤
- 在 project 的 bulid.gradle 添加依赖:
classpath ‘com.adison.gradleplugin:jar:1.0.2’
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.3.2' classpath 'com.adison.gradleplugin:jar:1.0.2' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }}
- 在对应的SDK的 Module的build.gradle 最下方中添加以下代码:
修改成你自己的配置
apply plugin: 'jar-gradle-plugin'BuildJar{ //输出目录 outputFileDir= project.buildDir.path+"/jar" //输出原始jar包名 outputFileName="你的sdk.jar" ////////////////////////////////////////////////////// // 优先级 exclude > include // ////////////////////////////////////////////////////// //需要包含的包名列表,当includePackage&includeClass为空时,则默认全项目输出,支持多包,如 includePackage=['com/adison/testjarplugin/include','com/adison/testjarplugin/include1'...] includePackage=['com/smart/yourA/', 'com/smart/yourB', 'com/smart/other'] //需要包含的类名列表,支持通配符 includeClass=['com/smart/*.class'] //这个gradle会把所有符合includePackage或者includeClass规则的class都打包,包括lib下的jar或者android SDK的jar //所以如果刚好第三方jar包的packageName符合includePackage,又不想它被打进jar包,请使用下面的方法 //不需要包含的第三方jar包列表,如['baidu.jar','baidu1.jar'...] excludeJar=['bcprov-jdk15on-156.jar','zbardecoder.jar','zxing.jar'] //指定不需要包含的类名列表,如['baidu.calss','baidu1.class'...] //可以指定通配符过滤: 所有Abcd$ 开头的类 : '**/Abcd\$*.class' excludeClass=['com/smart/interface/MainActivity*.class','com/smart/interface/ApiDemo.class','com/smart/interface/PermissionUtils*.class'] //指定不需要包含的包名列表,如 excludePackage=['com/adison/testjarplugin/exclude','com/adison/testjarplugin/exclude1'...] excludePackage=[] ////////////////////////////////////////////////////// // 混淆配置 // ////////////////////////////////////////////////////// //输出混淆jar包名 outputProguardFileName="test_proguard.jar" //混淆配置 proguardConfigFile="proguard-rules.pro" //是否需要默认的混淆配置proguard-android.txt needDefaultProguard=true applyMappingFile="originMapping/mapping.txt"}
- 执行 gradle
双击等待完成,就可以在 build/jar下找到你要的jar包了
阅读全文
0 0
- Android Studio【通用&方便】插件方式打包jar(不包含资源文件)
- Android studio 导出不包含asset资源文件的jar包
- 打包aar不包含依赖jar文件
- Android studio 打包jar文件
- 运用插件直接Android studio打包jar
- android Raw读取JAR资源打包文件
- Android开发随手记录-AS导出jar包 Android Studio生成包含assets的Jar 从Eclipse迁移到Android Studio,并打包指定文件到jar
- 最方便的Eclipse打包JAR插件
- android studio 打包jar
- Android Studio 打包Jar
- android studio打包jar
- Android Studio 打包Jar
- Android studio 打包Jar
- android studio 打包 jar
- Android Studio 打包Jar
- android studio 打包jar
- Android Studio 打包jar中包含另一个jar或多个jar时解决方案
- android studio 如何成功的打一个jar包 (不含资源文件)
- mysql 实现秒杀
- 自定义标题栏组合控件
- MVC设计模式
- JSONP原理--解决ajax跨域问题
- Leetcode:Path Sum II
- Android Studio【通用&方便】插件方式打包jar(不包含资源文件)
- 数据仓库
- 网络连接+HttpClient+AsyncTask
- UVALive 6085|Chemistry|字符串处理
- 【BZOJ 3591】 最长上升子序列
- LCA总结
- ROS常用命令
- MVP+Rxjava请求数据
- 蓝桥杯 算法提高 质数的后代