JEB Decompiler中文网站 > 新手入门 > JEB Decompiler怎么给函数添加注释 JEB Decompiler注释保存后为什么没有显示
教程中心分类
JEB Decompiler怎么给函数添加注释 JEB Decompiler注释保存后为什么没有显示
发布时间:2026/08/14 15:20:28

  在JEB Decompiler分析APK、DEX或Native程序时,函数数量一多,仅靠默认名称很难长期记录分析结论。给关键函数补充用途、参数含义和调用逻辑,可以明显降低后续回看成本。JEB Decompiler怎么给函数添加注释,JEB Decompiler注释保存后为什么没有显示,关键要分清注释究竟绑定到了函数对象还是某个代码地址,同时确认当前反编译视图是否已经刷新。JEB的注释并不是普通文本覆盖,它会附着在可识别的地址或代码对象上,因此光标位置不正确时,显示位置也可能和预期不同。

  一、JEB Decompiler怎么给函数添加注释

 

  JEB支持在反汇编和反编译代码视图中直接添加注释。分析函数整体用途时,适合把注释放在函数或方法声明位置;记录某条判断、调用或数据处理逻辑时,则可以把注释附加到具体指令位置。

 

  1、在函数位置添加注释

 

  ①在Code Hierarchy中找到准备分析的函数或方法,并打开对应代码。

 

  ②需要查看高级代码时,进入反编译视图,将光标移动到函数声明或需要说明的代码位置。

 

  ③确认窗口底部状态栏能够显示当前有效地址或代码对象。

 

  ④按下/快捷键,或者点击【Action】→【Comment】。

 

  ⑤输入函数用途、参数意义或当前分析结论,确认后查看注释是否出现在对应位置。

 

  JEB官方说明中,Comment属于代码分析的基础Action,注释会绑定到地址或Item,因此执行前应确保光标位于能够接受注释的位置。

 

  2、区分函数注释和局部代码注释

 

  写“负责验证登录令牌”这类整体判断时,应尽量定位函数声明;如果记录的是“这里判断返回值是否为空”之类的局部逻辑,则更适合定位具体语句或对应反汇编地址。

 

  ①先确定注释描述的是整个函数还是其中一条执行路径。

 

  ②函数级说明放在方法声明对应位置。

 

  ③局部分析说明则把光标放到具体语句或指令后再执行【Comment】。

 

  ④添加完成后切换一次反汇编和反编译视图,检查注释实际关联的位置。

 

  这种区分能够避免一个函数内出现大量看似相同的注释,也方便以后沿交叉引用继续分析。

 

  二、JEB Decompiler注释保存后为什么没有显示

 

  已经输入并确认注释,但当前窗口没有看到内容时,先不要重复添加。常见情况是注释已经存在,只是当前反编译文档没有对应到原来的地址,或者视图仍在显示修改前生成的内容。

 

  1、检查添加注释时的光标位置

 

  ①回到原来添加注释的函数。

 

  ②观察状态栏中的地址,确认当前位置属于有效代码地址或可交互对象。

 

  ③切换到Disassembly视图,找到相同位置,检查注释是否已经显示。

 

  ④如果注释出现在反汇编中,却没有出现在当前反编译结果中,说明数据本身可能已经保存,问题主要在视图映射或渲染。

 

  JEB明确说明,注释必须依附于地址或Item;没有有效地址时,就无法按照预期绑定注释。

  2、刷新或重新生成反编译结果

 

  反编译代码属于分析后生成的文档,代码重分析、函数结构变化或注释修改后,当前已经打开的反编译结果不一定立即重新生成。

 

  ①保持当前函数处于打开状态,执行刷新操作。

 

  ②仍没有显示时,返回Disassembly视图定位该函数。

 

  ③点击【Action】→【Decompile with Options】,重新生成当前函数的反编译结果。

 

  ④再次查看函数声明和对应语句附近是否出现注释。

 

  JEB的【Decompile with Options】支持强制重新反编译已经生成过的代码对象,因此遇到修改后视图没有同步时,可以用它重新建立反编译文档。

 

  3、确认打开的是保存后的项目

 

  如果关闭JEB再打开原始APK、DEX或可执行文件,相当于重新开始一个分析项目,之前项目中的人工注释不会因为原始文件相同就自动附加回来。

 

  ①保存分析工作时确认项目已经写入JDB2数据库。

 

  ②关闭项目后,再通过保存的JDB2重新打开。

 

  ③进入原来的函数位置,检查注释、重命名结果和标签是否恢复。

 

  ④如果只重新导入了原始二进制文件,应回到之前保存的项目数据库检查。

 

  JEB当前QuickSave保存内容包括主要的行内注释和前置注释,同时也会保存标签、重命名结果及项目属性。

 

  三、注释已经存在但位置看起来不对怎么处理

 

  反编译器可能会重构控制流、合并表达式或调整高层语句,因此一条底层指令与反编译代码并不始终保持一行对一行关系。此时应先确认注释绑定对象,再决定是否重新放置。

 

  1、从反汇编位置重新定位

 

  ①在Disassembly视图找到已经显示的注释。

 

  ②确认它对应的函数地址和指令。

 

  ③再切换到反编译视图,查看JEB映射到的高层代码位置。

 

  ④如果注释表达的是函数整体作用,可以重新放到函数声明处,减少受反编译结构变化影响。

 

  对于需要长期保存的分析结论,函数用途适合写在方法级位置;寄存器值、分支条件和调用现场等细节,则保留在具体地址附近更容易追踪。

  总结

 

  处理JEB Decompiler怎么给函数添加注释,JEB Decompiler注释保存后为什么没有显示,应先确保光标位于有效函数对象或代码地址,再通过【Action】→【Comment】添加说明。注释确认后没有显示,可以依次检查反汇编位置、刷新当前视图、重新反编译函数以及JDB2项目是否正确保存和重新打开。对于反编译结构经常变化的函数,整体分析结论尽量放在函数声明位置,局部逻辑再附着到具体指令。希望本文对大家整理JEB函数分析结果和排查注释显示问题有所帮助,如需进一步了解JEB Decompiler函数注释添加与注释保存后不显示问题排查,欢迎联系咨询。

135 2431 0251