在没有源代码的情况下调试 Java 应用程序

问题描述 投票:0回答:1

我已经构建了一个 Java 应用程序并正在尝试调试它。

此应用程序正在通过命令提示符执行:

javaw.exe -classpath "lib\.;lib\..;lib\1.jar;lib\2.jar;lib\3.jar;...." smt.smt....smt.Launcher

我已经有了反编译的伪代码,但我需要DEBUG程序。

我尝试将所有这些库导入 Intellij Idea 并使用远程调试,但代码的某些部分似乎已损坏。有时 Idea 会说“源代码与字节码不匹配”或“没有可执行代码...”。我认为这些问题是某种混淆的结果。 我想知道,有没有一种方法可以在没有任何源的情况下调试java应用程序?是否有任何工具可以附加到 javaw.exe 并使用 java 字节码指令逐步调试它?类似于调试本机进程,但使用 java 字节码而不是 asm 指令。

我不确定你所说的反编译伪代码是什么意思,但是像 JAD 和 Fern 这样的反编译器给出了实际的反编译代码。您可以重新编译代码并获得相同的功能。您将缺少的内容是格式、注释和变量/函数名称。

java debugging bytecode
1个回答
0
投票
这里

这里

有一些讨论可能会对您有所帮助。大多数为调试字节码而创建的调试项目都已经死亡,因为在大多数情况下增加了难度,没有任何优势。

© www.soinside.com 2019 - 2024. All rights reserved.