美文网首页
AndroidStudio4.0.1 打包 Jar包

AndroidStudio4.0.1 打包 Jar包

作者: code希必地 | 来源:发表于2021-01-26 16:42 被阅读0次

    1、新建一个项目

    image.png

    2、项目中新建一个module

    image.png

    3、修改新module下的build.gradle文件

    image.png
    task makeJar(type: Copy) {
        //如果什么都不写就生成在默认的路径下,也就是下文的build/intermediates/aar_main_jar/release/下,build目录是在当前module的文件夹下,比如我的就是在activity下。
        //删除
        delete 'build/output/activity.jar'
        //打包好的jar包在这个目录,至少这个版本的module打包后是在aar_main_jar这个目录下
        from('build/intermediates/aar_main_jar/release/')
        //打包好的jar包移到这
        into('build/libs/')
        //将classes.jar放入build/libs/目录下
        //include ,exclude参数来设置过滤
        //(我们只关心classes.jar这个文件)
        include('classes.jar')
        //重命名
        rename('classes.jar', 'activity.jar')              
    }
    //执行
    makeJar.dependsOn(build)
    

    添加这些代码后就可以在Terminal中运行gradlew makeJar,然后成功了就可以在上述目录里找到jar包了,如果你尝试了发现不对,那就得辛苦点了,在build/intermediates/目录下一个一个找吧!
    也可以在gradle的命令窗口里点击启动

    4、如果module中引用了第三方的jar

    image.png

    需要修改上面配置打包的指令


    image.png
    task makeJar(type:Jar){
        archivesBaseName = "mylib"
        from(project.zipTree('build/intermediates/packaged-classes/release/classes.jar'))
        from(project.zipTree('build/intermediates/packaged-classes/release/libs/okhttp-3.11.0.jar'))
        from(project.zipTree('build/intermediates/packaged-classes/release/libs/glide-3.6.0.jar'))
        from(project.zipTree('build/intermediates/packaged-classes/release/libs/retrofit-2.4.0.jar'))
        from(project.zipTree('build/intermediates/packaged-classes/release/libs/okio-1.15.0.jar'))
        destinationDir = file('build/libs')
    }
    makeJar.dependsOn(build)
    

    5、如果是在gradle中使用compile 'com.xxx.xxx:xxx:1.0'的方式引入的

    image.png
    你android studio中每个项目目录下都有这个外部类库,如果你在gradle中通过compile '...'的方式引入了其他的库,那么都会在这个地方出现相应的jar包,这是gradle缓存的文件,你选中你想要的那个jar包,右键->选择"Copy Path"->记事本中粘贴出这个路径,然后你就根据这个路径找到这个jar包在你电脑的哪里了。
    可以将这个jar包复制到module中的libs文件下,然后打jar包过程如4
    注意:不同AndroidStudio版本,build/intermediates/packaged-classes/release/classes.jar路径是不同的。

    相关文章

      网友评论

          本文标题:AndroidStudio4.0.1 打包 Jar包

          本文链接:https://www.haomeiwen.com/subject/bdogzktx.html