AndroidStudio打包jar包
来源:互联网 发布:周鸿祎谈网络战争 编辑:程序博客网 时间:2024/05/29 07:59
AndroidStudio打包jar包
androidstudio开发好了library之后,我们需要到jar都出如何提供给其他人使用:
在库中的build.gradle中配置当前的jar的脚本文件
task makeJar(type:org.gradle.api.tasks.bundling.Jar) {//指定生成的jar名 baseName 'sdk'//从哪里打包class文件/TestRxJava/testlibrary/ from('build/intermediates/classes/debug/com/aige/testlibrary/')//打包到jar后的目录结构TestRxJava/testlibrary/libs/ into('TestRxJava/testlibrary/libs/')// into('org/cmdmac/cloud/pluginsdk/')//去掉不需要打包的目录和文件 exclude('test/', 'BuildConfig.class', 'R.class')//去掉R开头的文件 exclude{ it.name.startsWith('R');}}makeJar.dependsOn(clearJar, build)
在androidstudio终端目录下这些命令:gradle makejar(makejar目录是在build.gradle目录下写的脚步名称)
➜ TestRxJava gradle makejar:testlibrary:preBuild UP-TO-DATE:testlibrary:preDebugBuild UP-TO-DATE:testlibrary:checkDebugManifest:testlibrary:preDebugAndroidTestBuild UP-TO-DATE.........
.............:testlibrary:check:testlibrary:build:testlibrary:clearJar UP-TO-DATE:testlibrary:makeJar UP-TO-DATEBUILD SUCCESSFULTotal time: 1.669 secs
编译完成后,我们在开发的目录下可以看到生成的文件,只有把下面的jar包拷贝出来就可以给其他人使用
➜ testlibrary tree -L 3.├── build│ ├── generated│ │ ├── assets│ │ ├── res│ │ └── source│ ├── intermediates│ │ ├── annotations│ ├── libs│ │ └── sdk.jar ---->生成的sdk.jar文件│ ├── outputs│ │ └── aar├── libs├── proguard-rules.pro├── src│ ├── androidTest│ │ └── java│ ├── main│ │ ├── AndroidManifest.xml│ │ ├── java│ │ └── res│ └── test│ └── java└── testlibrary.iml45 directories, 7 files
接下来我们查看打包的字节码的内容,修改sdk.jar->sdk.tar
➜ libs cp sdk.jar sdk.tar➜ libs lssdk.jar sdk.tar➜ libs tar zxvf sdk.tar x TestRxJava/x TestRxJava/testlibrary/x TestRxJava/testlibrary/libs/x TestRxJava/testlibrary/libs/META-INF/x TestRxJava/testlibrary/libs/META-INF/MANIFEST.MFx TestRxJava/testlibrary/libs/TestLibrary.class➜ libs
接下来我们使用javap -c TestLibrary 可以查看下面的*.class文件的内容
➜ libs javap -c TestLibrary 警告: 二进制文件TestLibrary包含com.aige.testlibrary.TestLibraryCompiled from "TestLibrary.java"public class com.aige.testlibrary.TestLibrary { public com.aige.testlibrary.TestLibrary(); Code: 0: aload_0 1: invokespecial #1 // Method java/lang/Object."<init>":()V 4: return public java.lang.String getString(); Code: 0: ldc #2 // String hellow jar 2: areturn}
代码仓库:https://github.com/cangck/testLibrary
阅读全文
0 0
- AndroidStudio打包jar包
- Androidstudio打包jar和arr包
- AndroidStudio将项目打包成jar包的简单方法
- AndroidStudio打包成jar
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出Jar包
- AndroidStudio导出jar包
- AndroidStudio 打jar包
- AndroidStudio导出jar包
- AndroidStudio导入JAR包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- SDK : error 1260
- 【Shiro】概述
- HTML5中video和audio所支持的格式
- mysql数据库数据表的相关操作
- HashSet HashTable HashMap的区别
- AndroidStudio打包jar包
- epoll
- git使用大全,强大的项目管理工具
- Gerrit搭建过程
- 行人检测(Pedestrian Detection)资源与更新
- Spring那些事(2)-关于maven至少得知道这些事儿吧
- DWZ(JUI)查找带回再次点击已选择的自动勾选
- 详解List、Iterator
- QTCreator 更改代码高亮主题为 VS+VA助手