欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

如何使用AndroidStudio3.0生成一个Jar文件?

程序员文章站 2022-03-29 14:33:10
build目录生成的关键文件 我们打包.Jar文件的编译文件 build.gradle 是通过 apply plugin: 'com.android.library...

build目录生成的关键文件

我们打包.Jar文件的编译文件 build.gradle 是通过 apply plugin: 'com.android.library' 修饰的library包,直接编译build就能在目录文件中找到.class文件 .class文件就是我们需要的.jar包。

Android Studio3.0的目录在build/intermediates/bundles/中, debug和release分别是测试版和正式版。我们可以通过直接解压查看是否混淆。

Android Studio3.0的class文件源码在build/intermediates/classess 文件中。

重载编译指令将.jar包

虽然我们最简单是通过gradlew build指令完成,但是我们可能还需要完成对.jar文件进行重命名和去除不需要的.R文件等需求。所有我们可以在module项目中的build.gradle中编写脚本,完成上面的需求。

//亲测 3.0以上不能删除导致以为出错,直接手动删除
task clearJar(type: Delete) {
    delete 'libs/chipsea_flylink.jar'
}
//获取到需要到处的文件
def releaseJar = file('build/intermediates/bundles/release/classes.jar')
//构建指令脚本
task makeJar(type: Jar) {
    //指定生成的jar名
    baseName 'test'
    //从哪里打包class文件 路径默认打包到build/libs
    from  zipTree(releaseJar)
    //去掉不需要打包的目录和文件
    exclude('test/', 'BuildConfig.class', 'R.class')
    //去掉R$开头的文件
    exclude { it.name.startsWith('R$'); }
}
//makeJar依赖clearJar和build指令
makeJar.dependsOn(clearJar, build)