android studio生成jar文件

来源:互联网 发布:淘宝代付没有支付宝 编辑:程序博客网 时间:2024/06/04 08:03

android  studio的library不会自动的生成jar文件,有两种方式。

1.需要手动调用jar文件将app目录下面  build/intermediates/classes/release目录的文件导出jar文件,

在这个目录下面运行命令行。

jar cvf test.jar -c .

2.在build.gradle下面加入下面的代码,编辑器下build会直接生成jar文件(或者调用gradle buildLib命令)

//定义一个函数,target是生成jar包的文件名,classDir是class文件所在的文件夹
def makeJar(String target,String classDir){
    exec{
        executable "jar"   //调用jar
        args "cvf",target
        args "-C", classDir
        args "","."

    }
}


//新建一个task,名为buildLib,依赖build(build是一个自带的task)
task buildLib(dependsOn:['build']) {
    makeJar("mobhero.jar","build/intermediates/classes/release")

}


可参照原文





--------------------------------------------------------------------

另,as导出的arr文件访问方法,可参照

http://stormzhang.com/android/2015/03/01/android-reference-local-aar/

首先Android Library项目的gradle脚本只需要在开头声明

apply plugin: 'com.android.library'

之后就和导出apk文件一样的方法,执行 ./gradlew assembleRelease,然后就可以在 build/outputs/aar 文件夹里生成aar文件

引用本地的aar

生成aar之后下一步就是如何引用本地的aar文件?本地的aar文件并没有像引用jar文件这么简单,官方也没有提供解决方案。好在国外的一些前辈总结出了方法,下面就以test.aar文件为例来详述下方法

1、把aar文件放在一个文件目录内,比如就放在libs目录内

2、在app的build.gradle文件添加如下内容

repositories {    flatDir {        dirs 'libs' //this way we can find the .aar file in libs folder    }}

3、之后在其他项目中添加一句gradle依赖便方便的引用了该library

dependencies {    compile(name:'test', ext:'aar')}

0 0