目前可以用来调试 Java 应用程序的工具令人叹为观止。现代 IDE 提供了全功能的调试界面,并且像 GlassBox 这样的工具用 BCI(bytecode instrumentation)提供了关于应用程序运行时状态的更多信息。虽然你有时候会发现自己处于无法使用这些工具的境地,或许应用程序被部署在防火墙的另一端,不允许你远程调试;或许你正在客户那里,没有你喜欢的工具可用。
现代调试工具使用的大多数信息和方法都由 JVM 自己提供,并具有控制这种信息而不用最新图形工具的一些方法。本文关注一些可用的调试方法,它们只使用 Java SDK(JDK)自带的那些工具,比如 JDB、Thread Dump 和 JMX 等。
这些工具虽然不完整,或者不像你习以为常的工具那么容易使用,但它们仍然提供了很多你可以用来分析和调试你应用程序的信息。基本熟悉了它们之后,就可以快速解决问题,否则要花数天进行调查,因此值得花时间去体验它们,并了解它们是如何工作的。
阅读全文: Java 调试——回归基础
评论