我正在使用Java和Java调试接口开发一个简单的调试器。我有两个类Debugger和Debuggee。调试器类由用于调试的逻辑组成。debugged类是正在调试的类。
当我在终端中运行应用程序时,它运行得非常完美。在Debugger VM中,它需要几种类型的事件。
当在终端中运行应用程序时,它运行得非常完美。调试器节点发送ClassPrepareEvent和BreakPointEvents。但是在IntelliJ中运行应用程序时,它不会发送ClassPreparationEvent和BreakPointEvent。
它将VMDeathEvent发送到VMStartEvent之后,然后是VMDisconnectEvent。
为什么会发生这种行为?是否应该在IntelliJ中设置任何配置?
发布于 2022-09-15 06:04:24
我也遇到了同样的问题,我知道这是个老问题,但是如果有人在搜索之后来到这里,下面是对我有用的内容;您需要将运行配置中的工作目录设置为项目的目标/类目录。,g,如果您的项目位于/Users/name/project,并且您的源代码位于/Users/name/project/src/main/java/中,则将工作目录设置为/Users/name/project/target/classes/。
我浪费了几乎一整天的时间来寻找这个问题的答案,结果发现这个错误是因为VM在通过IDE运行时没有找到调试器编译的类文件,因为它设置了错误的工作目录。
https://stackoverflow.com/questions/64634675
复制相似问题