一般如何实现远程调试

时间:2011-01-17 08:55:34

标签: remote-debugging

我一直在使用从JDeveloper到Weblogic服务器的远程调试很长时间,并发现它非常有用。但我有兴趣了解如何在技术上实现远程调试。

当我在调试服务器的远程机器上进行任何java代码更改并重建jdeveloper中的类时,代码更改会自动被服务器选中。这是怎么发生的?该工具是否将网络上编译的java类发送到服务器?

任何人都可以分享任何解释远程调试技术的文件/链接。

谢谢&问候, 哈里什

1 个答案:

答案 0 :(得分:0)

不确定您是在询问远程调试一般,还是您要描述的特定工具。

我对Java / jdeveloper了解不多,但一般远程调试的工作原理如下:

  • 在目标计算机上,一个特殊的服务器进程挂钩到您要调试的可执行文件,就像调试器在本地运行时一样。此服务器不必了解符号和源代码,只需运行可执行文件。使用系统命令,它可以要求它停止并检查其内存空间。
  • 在主机上,调试器本身运行,并且还有可执行文件及其源代码的副本。调试器使用某种协议(TCP / IP或嵌入式设备的串行)与目标机器上的服务器通信,并要求它执行步骤,从可执行文件中的调试信息中检查它知道的某些内存位置,可以显示正在调试用户的源代码等

例如,阅读gdbserver,这可能是最受欢迎的远程调试服务器。

希望这会有所帮助:)