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进入代码,查看源代码文件,如果有这部分文件,则可以编译修改代码。

你可能感兴趣的:(Android Studio 打包jar和aar到引用一篇搞定)