栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Android studio makeJar,adb调用jar包传参

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android studio makeJar,adb调用jar包传参

目录

1:如何使用AndroidStudio 打jar包

1.1 新建一个demo项目,并添加 依赖 一个java Module 模块

1.2 Module makejardemolib 的 build.gradle 文件中添加 makejar任务

1.3 Build -> Rebuild Project 项目,在 Module makejardemolib  build/lib 目录下生成对应 makejardemolib.jar 文件

1.4 执行makeJar 生成 在上面定义的目录下生成  对应的jar包文件

2:如何将 lib 下的jar中的类 打到jar中

2.1 Module中依赖一个Okhttp,找到 Okhttp的jar包添加到 模块的lib目录下

​2.2 在 makeJar 方法中添加  from(project.zipTree("libs/okhttp-4.1.0.jar"))

3:adb调用jar如何传参

3.1 编写接收外部传参测试代码

3.2  adb 窗口执行测试 外部调用传参

3.2  我们可以用来做什么


Demo Github地址:

GitHub - Mr-Bian/MakeJarDemo

正文

1:如何使用AndroidStudio 打jar包

1.1 新建一个demo项目,并添加 依赖 一个java Module 模块

File -> new -> New Module -> 选择 java or Kotlin Library -> next

主模块App 中 build.gradle 中添加依赖

implementation project(path: ':makejardemolib')

1.2 Module makejardemolib 的 build.gradle 文件中添加 makejar任务
def jarName = "makejarTest_1.0";

def outputLocal = "build";

def zipFile = file("build/libs/makejardemolib.jar")

task makeJar(type: Jar) {
    
    
    manifest.attributes "Main-Class": "com.bianbian.makejardemolib.UseJarTest"
    from zipTree(zipFile)
    
    
    
    from fileTree(dir: "src/main", includes: ['assets
    
//    from(project.zipTree("libs/xxx.jar"))
    baseName = jarName
    destinationDir = file(outputLocal)
}
makeJar.dependsOn(build)

下面一个图来表示下对应注释

1.3 Build -> Rebuild Project 项目,在 Module makejardemolib  build/lib 目录下生成对应 makejardemolib.jar 文件

1.4 执行makeJar 生成 在上面定义的目录下生成  对应的jar包文件

 点击makejar 上的绿色小箭头,然后点击第一项



2:如何将 lib 下的jar中的类 打到jar中

2.1 Module中依赖一个Okhttp,找到 Okhttp的jar包添加到 模块的lib目录下
implementation 'com.squareup.okhttp3:okhttp:4.1.0'

2.2 在 makeJar 方法中添加  from(project.zipTree("libs/okhttp-4.1.0.jar"))

 重新Rebuild 项目,运行makejar,发现打出来而jar包,已经包含了对应的 okhttp.jar 中的文件

将一些三方的jar中类 打进jar中的目的:

当我们需要这些三方类实现某些功能的时候,单纯生成的jar只有我们 自己编写的一些代码类;

会导致打出来的jar功能无法使用;


3:adb调用jar如何传参

3.1 编写接收外部传参测试代码

新建类 UseJarTest,并添加main方法,详见代码中注释 

public class UseJarTest {
    private static final String TAG = "UseJarTest";

    
    
    public static void main(String[] args) {
        
        LogUtil.info(TAG, "args length: " + args.length);
        for (String str : args) {
            LogUtil.info(TAG, "args: " + str);
        }
    }
}

3.2  adb 窗口执行测试 外部调用传参

 执行命令:

java -jar makejarTest_1.0.jar 参数1 参数2 参数3 参数4

窗口中会打印 代码中 使用  System.out.println(TAG + tag + ": " + logContent); 输出的日志

public class LogUtil {
    private static final String TAG = "MakeJarDemo: ";

    public static void info(String tag, String logContent) {
        
        System.out.println(TAG + tag + ": " + logContent);
    }
}

注:依赖 并运行在 java 环境下

1:电脑中配置java jdk 环境变量

2:业务中如果涉及android 相关依赖调用会无法使用

3.2  我们可以用来做什么

可以用来做你想做的啥都可以,例如 操作电脑中的本地文件,输出 excel 表格,过滤 error 日志,使用 okhttp 进行文件上传 等等;

只要能想到可以使用 java 代码实现的功能都可以;

上限非常之高

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/987799.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号