README
🚀 jadx 命令行工具
jadx 是一款功能强大的反编译工具,支持对 .dex、.apk、.jar、.class 等文件进行反编译,提供了丰富的命令行选项,满足不同场景的反编译需求。
🚀 快速开始
usage: jadx [options] <input>
输入可以是 .dex, .apk, .jar, .class 或目录
✨ 主要特性
- 支持多种输入文件格式,包括 .dex、.apk、.jar、.class 或目录。
- 提供丰富的命令行选项,可灵活控制反编译过程,如禁用颜色输出、指定输出目录、跳过未知文件等。
- 支持多线程反编译,提高反编译效率。
- 具备加密字符串常量、去除混淆信息等高级功能(部分仅适用于 Pro 版本)。
📦 安装指南
文档未提供安装步骤,故跳过此章节。
💻 使用示例
基础用法
反编译一个 APK 文件:
jadx -d out --source-only --no-gpl input.apk
以多线程模式反编译 DEX 文件:
jadx -p -o output.jar /path/to/dex
验证 dex 文件并禁用优化:
jadx --parse-only --no-optimize --api-level 28 input.dex
📚 详细文档
选项说明
| 选项 | 详情 | |------|------| | -b, --no-color | 禁用颜色输出 | | -d, --output-dir
| 指定输出目录,默认为 'out' | | -e, --skip-unknown | 跳过未知文件(仅适用于 APK) | | -f, --force | 强制覆盖已存在文件 | | -h, --help | 显示帮助信息 | | -i, --info | 显示输入文件信息 | | -j, --jar | 将输出打包为 jar 文件 | | -k, --no-gpl | 禁用 GPL 类 (仅适用于 Pro 版本) | | -m, --merge | 合并类文件(仅适用于 APK 和 JAR) | | -o, --stdout | 输出到标准输出 | | -p, --parallel | 使用多线程进行反编译 | | -q, --quiet | 禁止显示进度条和警告信息 | | -r, --no-resolve | 禁用重命名功能 | | -s, --source-only | 只反编译源文件(仅适用于 JAR) | | -t, --timestamp | 显示反编译时间戳 | | -v, --version | 显示 jadx 版本 | | -w, --wait | 等待用户确认后再继续 (按 Enter 继续) | | -x, --split | 按包分割输出文件 |反编译选项
| 选项 | 详情 | |------|------| | --encrypt-strings | 加密字符串常量(仅适用于 Pro 版本) | | --renames-file | 使用重命名映射文件 | | --no-class-renames | 禁用类重命名功能 | | --no-simplification | 禁用代码简化 |
调试选项
| 选项 | 详情 | |------|------| | -g, --debug | 启用调试模式 | | -I, --incremental | 启用增量反编译 | | --dump-classes | 显示所有已加载的类 | | --trace | 跟踪指定类的反编译过程 |
DEX 解析选项
| 选项 | 详情 | |------|------| | --parse-only | 只解析 DEX 文件,不进行反编译 | | --no-optimize | 禁用优化功能 | | --no-verify | 禁止验证 dex 文件校验和(仅适用于 Pro 版本) | | --api-level | 指定 Android API 级别,默认为 27 |
其他选项
| 选项 | 详情 | |------|------| | -c, --config | 使用指定配置文件 | | -l, --license | 显示许可证信息 |
插件选项 (-P<名称>=<值>)
| 插件选项 | 详情 |
|------|------|
| -Pdex-input | 加载 .dex 和 .apk 文件
dex-input.verify-checksum 验证 dex 文件校验和,默认为 yes |
| -Pjava-convert | 将 .class, .jar 和 .aar 文件转换为 dex
java-convert.mode 转换模式,值为 [dx, d8, both],默认为 both
java-convert.d8-desugar 使用 d8 的 desugar,默认为 no |
| -Pjava-deobfuscate | 去除混淆信息(仅适用于 Pro 版本)
java-deobfuscate.map-file 指定反编译映射文件 |
| -Pno-resource-deobfuscate | 禁用资源去混淆功能 |
| -Presources-only | 只反编译资源文件 |
环境变量
| 环境变量 | 详情 | |------|------| | JDAX_HOME | 指定 jadx 安装目录,默认为当前目录 | | JDAX_JVM_OPTS | 自定义 JVM 参数 |
🔧 技术细节
文档未提供技术实现细节,故跳过此章节。
📄 许可证
文档未提供许可证信息,故跳过此章节。
🔗 故障排除与贡献
- jadx 常见问题解答请访问 https://github.com/skylightcn/jadx/issues
- 项目源代码托管在 https://github.com/skylightcn/jadx
- 欢迎提交问题、建议或贡献代码
扫码联系在线客服