tomcat 啟動時卡住問題排查及解決方法
正常項目無法訪問(Linux 服務器),啟動tomcat時卡在下圖位置,項目無法啟動。
1、先檢查tomcat日志、項目日志沒有報錯信息,且沒再產生新的日志信息。
2、jdk、tomcat 、 jvm 配置,服務器環境、內存、存儲沒有問題。
3、使用jconsole 檢查啟動線程
(1)修改tomcat catalina.sh
JAVA_OPTS 中加入以下參數-Dcom.sun.management.jmxremote.port=8989 //連接端口,自定義不要與已有的端口沖突-Dcom.sun.management.jmxremote.rmi.port=8989 //這句一定要添加,不添加就無法成功-Dcom.sun.management.jmxremote.authenticate=false //不需要密碼登陸-Dcom.sun.management.jmxremote.ssl=false //不需要安全證書-Djava.rmi.server.hostname=10.10.1.1"http://服務器的ip
(2)另一臺運維windows服務器上進入cmd終端輸入jconsole。遠程進程,不需要輸用戶名、口令,連接。
查看 localhost-startStop-1 線程,發現鎖定信息
java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82)
- 已鎖定 java.lang.Class@2eaf5c32
確定問題原因:
如果程序采用到Java.awt進行圖形處理,這就需要系統提供一個可供圖形處理的圖形環境,此Linux沒有該環境,這樣就會導致運算錯誤。需要啟用headless模式,headless模式是在缺少顯示屏、鍵盤或者鼠標是的系統配置。
解決辦法:
在tomcat環境下修改catalina.sh
在JAVA_OPTS中加上一句 -Djava.awt.headless=true
到此這篇關于tomcat 啟動時卡住問題排查的文章就介紹到這了,更多相關tomcat 啟動卡住內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!
相關文章:
