Java命令學習-常見命令及Java Dump介紹
阿新 • • 發佈:2019-01-28
一、常用命令:
在JDK的bin目彔下,包含了java命令及其他實用工具。
jps:檢視本機的Java中程序資訊。
jstack:列印執行緒的棧資訊,製作執行緒Dump。
jmap:列印記憶體對映,製作堆Dump。
jstat:效能監控工具。
jhat:記憶體分析工具。
jconsole:簡易的視覺化控制檯。
jvisualvm:功能強大的控制檯。
二、認識Java Dump:
什麼是Java Dump?
Java虛擬機器的執行時快照。將Java虛擬機器執行時的狀態和資訊儲存到檔案。
執行緒Dump,包含所有執行緒的執行狀態。純文字格式。
堆Dump,包含執行緒Dump,幵包含所有堆物件的狀態。二進位制格式。
Java Dump有什麼用?
補足傳統Bug分析手段的不足: 可在任何Java環境使用;資訊量充足。 針對非功能正確性的Bug,主要為:多執行緒幵發、記憶體洩漏。
製作Java Dump
使用Java虛擬機制作Dump
指示虛擬機器在發生記憶體不足錯誤時,自動生成堆Dump
使用圖形化工具製作Dump
使用JDK(1.6)自帶的工具:Java VisualVM。
使用命令列製作Dump
jstack
:列印執行緒的棧資訊,製作執行緒Dump。
jmap
:列印記憶體對映,製作堆Dump。
步驟:
-
檢查虛擬機器版本(java -version)
-
找出目標java應用的程序ID(jps)
-
使用jstack命令製作執行緒Dump• Linux環境下使用kill命令製作執行緒Dump
-
使用jmap命令製作堆Dump
java 新人學習群、:202250194