专业的JAVA编程教程与资源

网站首页 > java教程 正文

dex2jar工具之二 dex2jar 2.1

temp10 2024-12-27 16:53:02 java教程 11 ℃ 0 评论

dex文件反编译工具dex2jar,下载dex2jar工具

1.首先找到Android软件安装包中的class.dex
把apk文件改名为.zip,然后解压缩找到其中的class.dex文件(或者用7z提取有时间不行),它就是java文件编译再通过dx工具打包成的,所以现在我们就用dex2jar工具来逆方向导出java源文件;

2.把class.dex拷贝到dex2jar.bat所在目录,即dex2jar目录下。

dex2jar工具之二 dex2jar 2.1

在运行中输入cmd,回车。进入dex2jar所在的目录然后运行

dex2jar.bat classes.dex,生成classes-dex2jar.jar就是所要转化jar包。

如:dex2jar在d盘目录下则输入命令:d:\> cd dex2jar

d:\>dex2jar>dex2jar.bat classes.dex 回车就可以在dex2jar目录下找到classes-dex2jar.bat.jar

------------------转自网络---------------

dex2jar用法


dex2jar:是dex格式文件与jar文件的转换。

下载安装 dex2jar地址:https://sourceforge.net/p/dex2jar

下载之后解压:

压缩包里,含有多个工具,最常用的是d2j-dex2jar.bat

1)d2j-dex2jar

d2j-dex2jar功能-- 将dex转换为jar

用法: d2j-dex2jar [options] <0号文件> [其他文件]

options:

-d,--debug-info 翻译调试信息
-e,--exception-file <file> 具体的异常信息文件,默认是$current_dir/[file-name]-error.zip
-f,--force 强制覆写
-h,--help 显示此帮助信息
-n,--not-handle-exception 不捕获dex2jar抛出的任何异常
-o,--output <out-jar-file> 输出.jar文件,默认是$current_dir/[file-name]-dex2jar.jar
-os,--optmize-synchronized 同步调整
-p,--print-ir 将ir输出到Syste.out
-r,--reuse-reg 生成java的.class文件时循环使用注册表
-s 与--topological-sort/-ts相同
-ts,--topological-sort 以拓扑逻辑整理块,能够生成更多可读代码
-v,--verbose 显示进度

将需要反编译的dex文件复制到 dex2jar 解压目录下

输入命令: d2j-dex2jar.bat classes.dex


接下来,安装 jd-gui查看jar的内容。

2、d2j-jar2dex

d2j-jar2dex – 调用dx将jar转换为dex

用法: d2j-jar2dex [参数] <目录>

参数:
-f,--force 强制覆写
-h,--help 显示此帮助信息
-o,--output <out-dex-file> 输出.dex文件,默认路径是$current_dir/[jar-name]-jar2dex.dex

3、d2j-jasmin2jar

d2j-jasmin2jar–将.j文件编译为.class文件

用法: d2j-jasmin2jar [参数] <路径>

参数:
-e,--encoding <enc> 指定.j文件编码方式,默认是UTF-8
-f,--force 强制覆写
-g,--autogenerate-linenumbers 自动生成行号
-h,--help 显示此帮助信息
-o,--output <out-jar-file> 输出.jar文件,默认是$current_dir/[jar-name]-jasmin2jar.jar

4、d2j-jar-access

d2j-jar-access–增加或移除jar文件中对类(class)/方法(method)/域(field)的访问

用法: d2j-jar-access [参数] <jar文件>

参数:
-ac,--add-class-access <ACC> 增加对class中内容的访问
-af,--add-field-access <ACC> 增加对field中内容的访问
-am,--add-method-access <ACC> 增加对method中内容的访问
-f,--force 强制覆写
-h,--help 显示此帮助信息
-o,--output <out-dir> 指定.j文件输出路径,默认是$current_dir/[jar-name]-access.jar
-rc,--remove-class-access <ACC> 移除对class中内容的访问
-rd,--remove-debug 移除调试信息
-rf,--remove-field-access <ACC> 移除对field中内容的访问
-rm,--remove-method-access <ACC> 移除对method中内容的访问

5、d2j-apk-sign

d2j-apk-sign–用测试证书对apk文件进行数字签名

用法: d2j-apk-sign [参数] <apk文件路径>

参数:
-f,--force 强制覆写
-h,--help 显示此帮助信息
-o,--output <out-apk-file> 输出.apk文件,默认路径是$current_dir/[apk-name]-signed.apk
-w,--sign-whole 对整个apk文件进行签名

6、d2j-jar2jasmin

d2j-jar2jasmin–反汇编jar文件中的.class文件至jasmin文件

用法: d2j-jar2jasmin [参数] <jar文件路径>

参数:
-d,--debug 反汇编调试信息
-e,--encoding <enc> .j文件的编码方式,默认是UTF-8
-f,--force 强制覆写
-h,--help 显示此帮助信息
-o,--output <out-dir> .j文件的输出路径,默认是$current_dir/[jar-name]-jar2jasmin/

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表