排查CentOS Java问题可按以下步骤进行:
检查基础配置
java -version
,未安装则用sudo yum install java-1.8.0-openjdk-devel
安装。echo $JAVA_HOME
和echo $PATH
,确保指向JDK路径,可通过编辑/etc/profile
永久设置。查看日志文件
/var/log/
、应用目录logs
文件夹),用tail -f
实时查看错误信息,重点关注ERROR
、Exception
关键字。hs_err_pidxxx.log
(Java崩溃时生成),获取线程堆栈、GC等信息。监控系统资源
top
、free -m
查看CPU、内存使用情况,判断是否因资源不足导致异常。df -h
检查磁盘空间,避免因磁盘满导致服务异常。分析JVM状态
jstack <PID>
生成线程快照,排查死锁、线程阻塞等问题。jmap -heap <PID>
查看堆内存使用情况,或结合jstat -gcutil <PID>
监控GC行为,分析内存泄漏。检查依赖与配置
-cp
参数指定。application.properties
、catalina.sh
),确认端口、数据库连接等参数正确。处理版本与权限问题
sudo yum update
升级或重新安装JDK。chmod +x /path/to/java/application
。使用工具辅助排查
jconsole
、VisualVM
监控内存、线程状态。Arthas
在线分析类加载、方法执行等问题。其他场景处理
netstat -tuln
查看占用端口的进程,修改应用端口或停止冲突服务。systemctl
查看服务状态,重启服务:sudo systemctl restart <服务名>
。参考来源:[1,2,3,4,5,6,7,8,9,10]