gradle 打包原码生成jar包

前言

刚刚下载了switchlayout的源码导入了工程里,但个人不大喜欢这样依赖module的模式,可能是ecplise留下的习惯,还是喜欢jar包 ,就捣鼓了一下如何打包。
当然觉得麻烦不愿意的人也可以从网上直接下载别人下载好的jar包

内容

我这里以switchlayout开源库为例子
先看一下项目结构:


gradle 打包原码生成jar包_第1张图片


在根目录下运行命令gradlew clean build


gradle 打包原码生成jar包_第2张图片


这时 app/build/intermediates/classes/release下,我们可以看到Java文件生成的class文件,我们只要用jar打包这个文件夹就可以了 如图


gradle 打包原码生成jar包_第3张图片


我们使用gradle的task命令
注意 这里在app(module级别) 目录下的build.gradle中添加task

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


    }
}

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


}


之后注意在根目录下,运行gradlew buildtask 就可以了
结果:大功告成


gradle 打包原码生成jar包_第4张图片


生成之后导入jar包的方法可看我的博客

http://blog.csdn.net/u014561933/article/details/50749384

你可能感兴趣的:(工具)