首页 > 编程语言 >android运行java

android运行java

时间:2023-01-28 11:47:18浏览次数:55  
标签:dex 文件 java jar android01 点击 android 运行

1、java代码打包成jar

1. 手动打包可直接执行的jar包

1) 先使用javac编译java文件,得到class文件

2) 新建文件,名字任起,比如可以叫manifest,内容如下(注意:1. 冒号后面加一个空格,2. 最后必须回车到新的空行,否则出错,如下面内容就必须在addJarPkg后面再输入一个回车)

Manifest-Version: 1.0
Main-Class: addJarPkg

3) 把编译好的class文件和第2步新建的文件放入指定文件夹,如test

4) 在cmd中运行命令

jar -cvfm main.jar manifest -C test .

  • 注意路径问题,其中test后面的 “.” 代表所有文件
  • jar后面的-m选项会将第2步新建的文件合并到 jar包中的
    META-INF/MANIFEST.MF,也就是更新清单配置文件。关于META-INF/MANIFEST.MF,可查看META-INF/MANIFEST.MF介绍
  • -C 后面指定要打包的目录, 目录后面的 . 代表目录下所有文件

2. 使用intellij idea工具打包可直接执行的jar包

1) 点击项目

2) 点击intellij idea左上角的“File”菜单 -> Project Structure

3)点击"Artifacts" -> 绿色的"+" -> “JAR” -> Empty

在这里插入图片描述

4) Name栏填入自定义的名字,Output ditectory选择jar包目标目录,Available Elements里双击需要添加到jar包的文件,即可添加到左边的jar包目录下,具体看下图

在这里插入图片描述

5)点击Create Manifest,选择放置MANIFEST.MF的文件路径(直接默认项目根目录就行,尽量不要选别的路径,可能会造成不必要的错误),点击OK。

在这里插入图片描述

6) 点击Main Class后面选择按钮

在这里插入图片描述

7) 弹出框中选择需要运行程序入口main函数,点击OK

在这里插入图片描述

8) 以上设置完之后,点击OK

9) 点击菜单中“Build” -> “Build Artifacts”

在这里插入图片描述

10) 双击弹出框中待生成jar包下面的build即可,如下图

在这里插入图片描述

至此使用Intellij idea生成可直接执行jar包完成。  参考------https://blog.csdn.net/littleflower9/article/details/121036703

2、jar转成dex: eg:在jar包所在目录下进入命令控制台,输入命令

dx --dex --output=android01.dex testAndroidJar-1.0-SNAPSHOT.jar

  • testAndroidJar-1.0-SNAPSHOT.jar,为需要转换的jar名称
  • android01.dex,为转换后的dex文件的名称

3、 将dex文件push放入移动设备

  • adb -s emulator-5554 push D:\JavaCode\testmaven00\testAndroidJar\target\android01.dex /data/local/tmp
  • emulator-5554,为连接设备的序列号
  • D:\JavaCode\testmaven00\testAndroidJar\target\android01.dex,为需要放入移动设备的文件的绝对路径
  • /data/local/tmp,为移动设备存放dex文件的目录

4、执行dex文件:首先进入安卓系统

  • 输入命令:app_process -Djava.class.path=/data/local/tmp/android01.dex /data/local/tmp com.android.TestAndroid

  • android01.dex,为转码后的dex文件,前面需要加上存放文件的目录
  • TestAndroid,为java代码的主方法所在类名,前面还需加上包名“com.android.”

 

 

 

参考:https://blog.csdn.net/qq_41841482/article/details/122472958

标签:dex,文件,java,jar,android01,点击,android,运行
From: https://www.cnblogs.com/banyanisdora/p/17069974.html

相关文章

  • java 创建 编辑 PDF
    JAVA操作PDF开源项目操作PDF的JAR主要分成两类,分别是iText系列和ApachePDFBox系列1.1iTextPDF:iText是著名的开放项目,是用于生成PDF文档的一个java类库。通过iText......
  • Java:注解
    注解还记得刚开始学注解时,很天真。傻傻以为创建一个注解类,加到类、方法、属性上就能有某种功能。现在对注解的理解很简单:标记,可以被程序读取到的标记!(注释是程序不会去执......
  • 数据可视化大屏高德地图javascript webAPI开发的智慧治安物联网管理系统实战解析(web
    文章目录​​高德地图开发系列文章目录​​​​前言​​​​一、项目说明​​​​二、核心代码开发​​​​1.引入库​​​​2.构建DOM容器​​​​3.高德地图开发​​​​(1......
  • 在java中实现两层关联的枚举
    在实际开发中,有各种奇葩的需求,我就遇到一次,在调度任务建依赖的时候,需要选择依赖的周期和周期的值比如下面这样,如果你依赖天任务,那么还需要选择今天、昨天还是前七天?周......
  • Java Web项目1:水果管理系统
    JavaWeb项目1:水果管理系统核心参考资料:JavaWeb教程笔记尚硅谷JavaWeb教程项目架构体系单一架构技术体系视图(V):用户的操作界面+数据的动态显示前端技术:HTML/CSS/J......
  • EAS查找/停止正在运行的后台事务SQL语句
    EAS查找正在运行的后台事务SQL语句select*fromT_job_instwhereFSTATE='Running'andFTITLELIKE'%商务卡%'EAS停止正在运行的后台事务SQL语句updateT_job_ins......
  • 《优爱酷玩转机顶盒》实战系列№2:机顶盒Root教程推送SuperUser.apk超级授权文件(附下载
        Root成功            再次声明:刷机有风险,请自行斟酌,风险自负。优爱酷对使用本程序或教程可能造成的不良后果不承担任何法律或道......
  • 嵌入 WebAssembly 运行时和实例化 WebAssembly 模块的几大要素
    ​​嵌入WebAssembly运行时和实例化WebAssembly模块的几大要素​​ 下面这段代码忽略了错误处理机制,介绍了如何在Go语言开发的宿主程序中嵌入WebAssembly.fun......
  • 优爱酷玩转机顶盒实战系列AndroidTV
    优爱酷玩转机顶盒实战系列AndroidTV  介绍优爱酷玩转机顶盒实战系列AndroidTV。请关注【优爱酷】回复【机顶盒】查阅《优爱酷玩转机顶盒》实战实录系列文章......
  • 清理过时的.NET SDK 和 运行时
    TL;DR.NET卸载工具随着这几年.NET的快速发展,电脑上的.NETSDK和runtime也在不断的积累。每个sdk动辄都是上百兆的空间占用,很快本来就不富裕的C盘空间就更加紧俏了......