我正在开发一个多线程的Web服务器小程序,并且在过去一周左右的时间内一直在处理system.out.println,作为我的“调试”工具。据我了解,我构建的.jar由构建器拆分并放入.html文件中,然后在访问Web服务器时吐出。
我想知道是否可以通过某种方式将调试器(插件?)附加到Java的虚拟机上,从而允许我在操作Web服务器时逐步执行代码-某些关键异常非常令人沮丧追查。我认为它们是与多线程相关的计时问题,这使得它们在尝试定位时更加不可靠,并且可能意味着调试器将无法正确处理。我认为这并不重要,但是我正在构建的IDE是Netbeans。
我已经接管了以前的开发人员匆忙完成的项目,现在我的想法已经过去了。 = /在此先感谢您提供任何可能的解决方案,谢谢。
最佳答案
你当然可以。
您需要使用适当的参数启动Web服务器JVM,以允许对其进行远程调试。您可以在http://download.oracle.com/javase/1.3/docs/tooldocs/win32/jdb.html处了解如何操作。 jdb与javac一起在JDK中可用。然后,您启动IDE调试器以连接到JVM,并告诉它您的类源位于何处。请记住要使用调试信息进行编译。
由于您已经在Netbeans中拥有它,因此可以考虑仅以调试模式启动它,因为上述所有其他工作将自动为您完成。
关于java - 在JVM中调试多线程Web服务器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6866126/