软件介绍
dex2jar是一个能操作Android的dalvik(.dex)文件格式和Java的(.class)的工具集合。dex2jar可以将.dex文件转换成Java的.class文件的转换工具。dex2jar与JD-GUI组合起来就能很好的对apk进行一个反编译。
软件基础简介
dex2jar反编译是一款很不错的将android的.dex文件转换成Java的.class文件的转换工具,是一个能操作Android的dalvik(.dex)文件格式和Java的(.class)的工具集合,它就是java文件编译再通过dx工具打包而成的。通过它可以轻松将dalvik转.class格式java文件完成反编译。提供三种不同版本的dex2jar,如果在转换过程中有问题的话,可以试用下其他的版本。
使用方法
1、使用命令行时,当转某个类失败时将继续,而不退出程序
2、解决读取class annotation的一个问题Fixes issue 42
3、rename package pxb.android.dex2jar to com.googlecode.dex2jar
4、issue 33,issue 43在启动参数中设置默认jvm内存大小
5、修复读取dex中java/lang/Object类时其父类是null导致的一个NPE问题
6、提高异常信息的可读性Fixes issue 44
软件特性
dex文件反编译dex2jar.bat
1、首先找到Android软件安装包中的class.dex
把apk文件改名为.zip,然后解压缩其中的class.dex文件,它就是java文件编译再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件;
2、把class.dex拷贝到dex2jar.bat所在目录。
运行dex2jar.bat classes.dex,生成classes.dex.dex2jar.jar
这时你将看到生成的jar包,然后通过上述的XJAD反编译class文件。
安装步骤
1、在本站下载
2、下载完成后解压,并拷贝到一个位置。比如这里拷贝至D盘下的programefile目录下。
3、然后将.dex 文件拷贝至dex2jar的工具目录中
4、打开cmd窗口,并进入到dex工具目录下,然后执行如下命令
d2j-dex2jar.bat classes.dex
5、此时即可以将.dex 文件转换为jar包文件&xff0c;如下所示。
软件截图




软件官网
http://dex2jar.sourceforge.net/
软件综述
Dex2jar 2.0 是一个将 Android 应用中的 Dalvik 字节码(DEX 文件)反编译为 Java 字节码(JAR 文件)的工具。它已被广泛使用,但其质量和可用性随着时间的推移而变化。
优点:
- 免费开源:它是一个免费使用的开源工具,可用于个人和商业项目。
- 跨平台:它支持 Windows、MacOS 和 Linux 等多种操作系统。
- 功能强大:它可以反编译复杂的 DEX 文件,提取 Java 源码、资源文件和元数据。
- 更新频繁:它定期更新,添加新功能并修复错误。
缺点:
- 不完整:它无法反编译所有 DEX 文件,并且输出的 Java 代码可能不完整或不可用。
- 可能会失败:它在处理某些 DEX 文件时可能会失败,尤其是在这些文件使用复杂的混淆技术的情况下。
- 仅限反编译:它只能将 DEX 文件转换为 JAR 文件,不能将 Java 字节码重新编译为 DEX 文件。
- 过时:自 2.0 版本以来,它就没有更新,这意味着它可能无法处理较新的 Android 应用。
替代方案:
近年来,出现了许多 Dex2jar 的替代方案,包括:
- APKTool:一个更全面的 Android 反编译工具,可以提取更多信息,例如布局文件和清单。
- jadx:一个基于 Java 的反编译器,可以处理复杂的 DEX 文件并生成更可读的 Java 代码。
- Fernflower:一个基于 Java 的反编译器,以其准确性和鲁棒性而闻名。
结论:
Dex2jar 2.0 对于简单的反编译任务来说仍然是有用的,但对于更复杂或较新的 Android 应用,建议使用更现代和功能更齐全的替代方案。