1. JDK自带命令行工具
Debian系统自带JDK(可通过sudo apt install openjdk-11-jdk安装),其内置的命令行工具是基础调试工具,无需额外配置:
stop at ClassName.methodName:lineNumber)、单步执行(step进入方法/next跳过方法)、变量查看(print variableName)及线程分析(threads查看线程列表、where查看当前线程堆栈)。适用于快速排查简单问题或脚本化调试场景。jstack -l <pid>)。jmap -heap <pid>)或生成堆转储文件(jmap -dump:format=b,file=heap.hprof <pid>),辅助排查内存泄漏。2. 集成开发环境(IDE)
IDE提供图形化界面,大幅提升调试效率,适合复杂项目开发:
Remote配置,输入服务器IP和端口(如address=*:8888)。3. 远程调试工具
通过JVM参数开启远程调试,配合IDE实现远程排查:
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar your-app.jar(server=y表示作为调试服务器,suspend=n表示不暂停启动)。IDE(如IntelliJ IDEA)通过“Remote Debug”配置连接到该端口,实现远程断点调试。4. 图形化性能与调试工具
5. 日志与断言工具
logger.debug("Variable value: {}", variable)),配合ELK(Elasticsearch+Logstash+Kibana)或Loki实现日志收集与可视化,辅助排查分布式系统问题。assert语句在代码中插入检查点(如assert array != null : "Array cannot be null"),开发阶段开启(-ea参数)可快速捕获非法状态,适合防御性编程。