Android Studio 打包jar和aar到引用一篇搞定

前几天因为工作需要需要将Android项目打包成jar以供其他工程调用,但是按照网上给的教程打包的时候却遇到一个问题:想找到打包之后的jar文件,但是build之后在项目文件夹/build/intermediates/下找不到bundles文件夹,下面是网上给出的jar文件路径
bundles文件夹找不到

原因是bundles文件夹改为了packaged-classes文件夹

build/intermediates/packaged-classes/release/

在packaged-classes文件文件夹下就可以找到我们需要的.jar文件了

附上打包指令

    //在Terminal中键入 gradlew makeJar 回车看到如下所示就OK了
    // jar在app libs中
    task makeJar(type: Copy) {
        delete 'build/libs/mysdk.jar'
        from('build/intermediates/packaged-classes/release/')
        into('build/libs/')
        include('classes.jar')
        rename('classes.jar', 'mysdk.jar')
    }

    makeJar.dependsOn(build)

位置 build/libs/

关于aar包
理解为Android项目独有的jar包(包含class文件和资源文件)使用和jar文件,在我们打包的同时其实已经生成了位置如图
位置 /build/output/aar/

如何使用呢,来点简单粗暴有用的

直接复制aar或jar,到我们需要的module的libs下面,如下图
直接复制aar和jar到module的libs
值得注意的是第一步将aar文件放入引用Module的libs目录下后,和一般的jar文件引用类似,需要在moudle的build.gradle配置文件中把 libs 目录加入依赖

在 gradle 的依赖配置中加入 compile(name: 'xxx', ext: 'aar') 这一句,依赖即可关联完毕,

dependencies {
    compile(name:'myaartest',ext:'aar')
}
//这句很重要 不加资源无法加载
repositories{
    flatDir{
        dirs 'libs'
    }
}

会在Module的build/intermediates/exploded-aar 目录下,生成一些临时文件。如果android studio安装了反编译工具则可以按F3进入代码,查看源代码文件,如果有这部分文件,则可以编译修改代码。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容