封装jar包,jar包合并jar包

需求就是把写好的工具类封装成jar包方便第三方客户使用。

我是在android studio3.3.2上进行的操作。

1.新建library

封装jar包,jar包合并jar包_第1张图片

建完会弹出选择框选择Android Library ,然后next,给module起个名字,最后finish就可以了。

2.现在我们就开始在新建好的library内的build.gradle文件中,配置相关代码

在android{}内写的

注:ykprinterlib名字自己随意起的

task makeJar(type: Copy) {
    delete 'build/ykprinterlib.jar' //删除之前的旧jar包
    from('build/intermediates/packaged-classes/release/') //从这个目录下取出默认jar包
    into('build/libs/') //将jar包输出到指定目录下
    include('classes.jar')
    rename('classes.jar', 'ykprinterlib.jar') //自定义jar包的名字
}
makeJar.dependsOn(build)

封装jar包,jar包合并jar包_第2张图片

3.在android studio 下面的Terminal里输入gradlew makeJar生成jar包

在ykprintlib/build/intermediates/packaged-classes/release/目录下可以看到classes.jar

在ykprinterlib/build/libs目录下可以看到生成的ykprintlib.jar文件

4.这样jar包就可以用了。但是如果moudle里有一个jar包,那么这个jar包是不会在自己生成的jar包里的,就会导致程序调用出错

于是就有了jar包合并这么一步

5.使用Apache Ant进行jar包合并Ant下载地址

6.配置ant的环境变量新建ANT_HOME 变量值D:\apache-ant-1.10.5,我的是保存在D盘下的

封装jar包,jar包合并jar包_第3张图片

找个path变量编辑 加上D:\apache-ant-1.10.5\bin,我的因为用%ANT_HOME%\bin不行

在找到classpath变量加上D:\apache-ant-1.10.5\lib;这个就可以了

7.来测试一下ant是不是可以用了输入cmd 输入ant

看到这个提示就成功了,接下来就开始合并吧

8.新建一个build.xml文件,我就是在D:\apache-ant-1.10.5这个目录下建的,接下来写上配置

这里面是不能有注释的  ykprint可以改成你自己想起得名字,D:\jar是存放jar包的地方,

ykprint-1.0.jar是合并后jar包的名称   zipfileset里就是放要合并的jar包,可以是多个



    
        
            
            
        
    

9.下面我们就把library封装的jar包和library内libs内的jar包都拷贝到D:\jar目录下,然后在cmd操作指令,进行jar包合并

封装jar包,jar包合并jar包_第4张图片

现在就可以在D:\jar下看到我们合并好的jar包了,这样就可以放到我们的项目中进行使用了

 

 

 

 

你可能感兴趣的:(jar包)