如何在jar的反编译类中设置断点以在IntelliJ中进行远程调试

时间:2019-05-16 18:46:29

标签: java debugging intellij-idea

我有一个在调试模式下运行Java程序的远程服务器。

它具有以下Java选项:     JAVA_OPTS =“-agentlib:jdwp = transport = dt_socket,server = y,suspend = n,address = 5005”

我可以使用IntelliJ调试器成功连接到它。

我可以从IntelliJ中停止该进程,并获得线程转储。

我现在想为某个方法添加一个断点。但是,使用Breakpoint窗口设置类模式和方法名称的通配符匹配(从理论上讲)是可行的,但是它是如此之慢,以致无法使用它来调试Web请求。

我确实可以使用jar,因此我希望IntelliJ反编译jar,将其作为源代码展示给我,并允许我在反编译的jar中设置断点。

我该如何实现?

(我具有执行此操作的全部权限以及可用的实际源代码,但是出于法律原因,我无法将源代码传输到我要调试的计算机上)

1 个答案:

答案 0 :(得分:0)

结果非常简单:

  1. 使用IntelliJ中的所有jar打开文件夹(它们显示为列表,但不是“可浏览”
  2. 右键单击文件夹“打开模块设置”
  3. 转到“图书馆”
  4. 点击“ +”,然后点击“ Java”
  5. 选择该目录中的所有jars
  6. 现在所有罐子都可以浏览
  7. 在jar代码中设置断点