java,class,dex转换过程
来源:互联网 发布:数据精灵干嘛的 编辑:程序博客网 时间:2024/06/10 08:20
java文件:txt文本保存后,修改为.java文件即可
class文件:.java文件经java编译器编译后生成对应的.java文件
生成方法1.在eclipse中选中某一个类,然后导出为jar文件。将得到的jar文件修改为.zip文件然后解压,即可看到想要的.class文件
生成方法2.使用cmd命令行命令编译java文件“javac 绝对路径\xx.java”
我们可以使用javap命令来查看Hello.class文件对应的java字节码,命令行输入“javap -c 绝对路径\Hello.class”
将class文件转换为dex文件
实现class文件转换成dex文件的方法很多,这里只阐述一种,用命令行实现。
这里需要特别提示一点:我们这里使用sdk中提供的dx.jar来实现class文件转换成dex文件,这个时候我们要注意一点,我们操作的class文件对应的java compiler版本(这个版本就是你编译java文件的时候的编译器版本)要跟我们android的compiler版本保持一致,不然会报错(这里最好是使用android工程下的class文件最为保险)
也可以通过这个方法解决版本问题:命令:javac -source 1.6 -target 1.6 绝对路径\xx.java
dx.jar在sdk\build-tools文件夹下的各个版本里边都有,需要注意的是,如果想要使用dx,命令行的当前路径应该到版本路径下,如:sdk\build-tools\24.0.3下边
命令:dx --dex --output=绝对路径\xx.jar 绝对路径\xxx.jar 备注:这里是将class文件和生成的dex文件都放到了jar文件当中
如:我们最终想要得到的dex文件就在Hello_dex.jar里边
修改Hello_dex.jar后缀为Hello_dex.zip,解压得到classes.dex文件
我们可以使用sdk提供的dexdump.exe工具查看dex文件的字节码,这个工具在sdk目录下的build-tools文件夹下的相应版本里边都有,使用命令式请定位当前目录到某个版本文件夹下(build-tools文件夹下的版本随便选一个)
命令:dexdump -d 绝对路径\xx.dex
dex文件转换成class文件
将上边得到的classes.dex文件转换成class文件,这里用到dex2jar工具(可以百度一下,然后下载)
将classes.dex文件拖动到dex2jar文件夹中的dex2jar.bat文件上,在classes.dex所在的文件夹下就会生成classes.jar文件,里边就是对应的class文件了
如:
使用jd-gui打开classes.jar
- java,class,dex转换过程
- java文件怎么转换成class文件;class怎么转换成jar文件;jar文件怎么转换成二进制dex
- 由.java文件到.class文件转化成.dex文件再转化.smali文件的过程
- dex转jar , jar转dex , class转java
- Android中的Java,class,dex,apk
- java加载class过程
- Android的4种文件类型Java,class,dex,apk
- .class生成.dex
- class & dex 文件详解
- java dex
- android动态加载外部jar包,用eclipse将class转换成dex
- java,javac查找class过程
- dex: 类加载过程
- odex 转换为 dex
- Class resolved by unexpected DEX
- java编码转换过程
- Java编码转换过程
- java.lang.ClassNotFoundException: Didn't find class "com.kge.love.base.BaseApplication" on path: Dex
- Asynchronous programming
- 函数入栈顺序
- 直播技术调研
- leetcode 数组array之566. Reshape the Matrix
- 自定义view系列(5)--99.99%实现QQ侧滑删除效果
- java,class,dex转换过程
- python中字符串常用方法
- python 创建并解析XML
- Spark性能优化:JVM参数调优
- html的各种宽度 高度
- Unity Shader学习笔记:折射
- QTP 破解方法
- mysql随机查询出一条 符合条件的数据
- WIN7下JDK1.8的安装