前言
版本:JEB 5.15.0.202408212153
官方文档位于如下位置
Client Configuration – JEB Decompiler
Engines Configuration – JEB Decompiler
配置文件位于jeb目录下的bin/jeb-client.cfg和jeb-engines.cfg,其中jeb-engines.cfg较为重要,用于配置引擎的行为,影响反编译结果。
重要配置
仅针对本人使用中的重要配置,剩余选项见官方文档
jeb-engines.cfg
| 字段名称 | 设定值 | 说明 |
|---|---|---|
.parsers.apk.GenerateAapt2Output |
true | 生成aapt2输出片段 |
.parsers.apk.MergeMultiDex |
true | 多dex合并 |
.parsers.apk.PreferredLocales |
zh_CN | 首选的本地化语言,字符串等资源的默认使用语言 |
.parsers.dcmp_dex.DecompilerThreadCount |
-1 | 使用所有处理器进行并发反编译 |
.parsers.dcmp_dex.DisplayMethodInternalsAsComment |
2 | 在渲染源代码的时候在前面踢的注释块中添加函数签名和AST |
.parsers.dcmp_dex.DoNotGenerateThisIfPossible |
false | 在没有命名冲突的时候也使用this,可以让代码更加清晰 |
.parsers.dcmp_dex.MethodDecompilationTimeout |
0 | dex方法的反编译不会超时,有时函数较大默认情况下会无法反编译。设定为不超时后有些大型方法可能会反编译很久,但是最终会成功。 |
.parsers.dcmp_dex.SplitCallArgThreshold |
6 | 参数超过6个会拆分为单行,默认为10,有时候太长了拉着很麻烦 |
.parsers.dex.CallgraphGenerationTimeout |
-1 | 生成调用图不会超时 |
.parsers.dex.ShowBytecode |
true | 显示字节码 |
.parsers.dex.ShowDebugDirectives |
true | 显示调试指令(元数据) |
.parsers.dex.ShowLineNumbers |
true | 显示源代码行号 |
.parsers.dex.ShowOriginalNames |
true | 将类/方法/字段的原始描述符名称显示为注释 |
.parsers.native.decomp.MergeAdjacentDefinitions |
true | 相同类型的变量定义显示到一行,简洁一些 |
.parsers.native.decomp.MethodDecompilationTimeout |
0 | native的反编译不会超时 |
.parsers.native.disas.Hide0Padding |
false | 不隐藏填充的0,纯纯是看习惯了 |
jeb-client.cfg
| 字段名称 | 设定值 | 说明 |
|---|---|---|
.CheckUpdates |
false | 禁用版本检查 |
.ui.DoNotReplaceViews |
true | 创建新窗口,而不是替换旧的 |
.ui.text.DisplayAssistantButtonInDecompiledFragments |
false | 反编译代码中不显示Request Assistance按钮,似乎要么也没什么用 |
.ui.text.ForceDisplayHorizontalScrollbar |
true | 显示水平滚动条 |
.ui.text.ScrollLineSize |
1 | 每次滚动一行,有的时候方便开两个jeb比较代码对齐位置 |



