前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android十八章:Android Studio打包jar文件

Android十八章:Android Studio打包jar文件

作者头像
ppjun
发布2018-09-05 11:53:10
1.1K0
发布2018-09-05 11:53:10
举报
文章被收录于专栏:ppjun专栏

有人问我

AndroidStudio怎么打包出jar文件。

通常我们AndroidStudio项目中里面包括了一个library,在library对应的build/intermediates/bundles/release/classes.jar。这个classes.jar就是library对应的jar文件。 ps:library对应的aar文件在build/outputs/aar/xxx.aar 下面我们直奔主题。

如何打包jar

我只想要对应的class文件打包进一个jar。

这里我们用到jar命令

代码语言:javascript
复制
jar cvf AAA.jar -C BBB/ .

意思就是把BBB目录下的所有class文件都打包进AAA这个jar。

在build/intermediates/classes/release/里面有library生成的所有class文件。 所以我们只要打包这个文件夹下的所有class文件就好了 在对应的module或者库的build.gradle文件下,手写task,比如以下

代码语言:javascript
复制
/*生成jar包名*/
def JAR_NAME="AAA.jar";
/*生成jar文件夹路径*/
def TARGET_FOLDER="build/"
/*包含class文件的路径*/
def CLASS_FOLDER="build/intermediates/classes/release/"


/*执行命令jar cvf xx.jar -C xxx/ .   */
def makeJar(String target,String classDir){
    exec{
        executable "jar"
        args "cvf",target
        args "-C",classDir
        args " ","."

    }
}

task buildJarTask(dependsOn:['build'])<<{
    makeJar(TARGET_FOLDER+JAR_NAME,CLASS_FOLDER)
}
/*
在终端项目根目录执行gradle buildJarTask*/

如果是window下,我们还可以写一个bat脚本,然后把脚本放在build/intermediates/classes根目录下,双击bat文件执行命令。

代码语言:javascript
复制
@ECHO OFF
Echo Auto-Jar Created By ppjun
Echo start to jar the folder

jar cvf apple.jar -C release/ .

Echo jar Complete 
 
Pause
EXIT

上面就是我们打包的整个过程。

总结

  1. 使用命令jar cvf xx.jar -C xxx/ . 将class文件打包进jar文件
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.04.05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 有人问我
    • AndroidStudio怎么打包出jar文件。
    • 如何打包jar
      • 我只想要对应的class文件打包进一个jar。
      • 总结
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档