Java > JDKの付属コマンド

更新日 2012-05-13
広告
JDK (Java Development Kit)には、便利なコマンドが付属しています。JRE (Java Runtime Environment)には付属していません。

jps

jpsは、実行中のJavaクラス(Javaアプリ)と、そのプロセスIDを表示するコマンドです。
$ jps
2796 Jps
2694 Bootstrap
2つのJavaクラスと、そのプロセスIDがわかります。
$ jps -l
2694 org.apache.catalina.startup.Bootstrap
2806 sun.tools.jps.Jps
-lオプションをつけると、実行されているJavaクラスのパッケージ名も表示できます。

jstat

jstatは、Java VMの状態を出力するコマンドです。基本的な構文は、以下のとおりです。
 jstat オプション JavaアプリのプロセスID
Javaアプリは、上述のjpsコマンドで調べられます。「オプション」として指定できる文字列は、以下のようにすれば確認できます。
$ jstat -options
-class
-compiler
-gc
-gccapacity
-gccause
-gcnew
-gcnewcapacity
-gcold
-gcoldcapacity
-gcpermcapacity
-gcutil
-printcompilation
各オプションの詳細な内容は、Javaのドキュメントを参照してください。例えば gcutil オプションを指定すると、Java VMのメモリの利用状況を確認できます。
$ jstat -gcutil 2694
  S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT   
 20.29   0.00  10.83  39.51  73.07     10    0.034     1    0.025    0.059
-tオプションを追加すると、Javaアプリが起動してから経過した時間も表示してくれます。単位は「秒」です。
$ jstat -gcutil -t 2694
Timestamp         S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT   
          655.5  20.29   0.00  51.66  39.51  73.12     10    0.034     1    0.025    0.059
定期的に情報を表示したい場合は、プロセスIDの後に、表示間隔を指定します。単位は「ミリ秒」です。
$ jstat -gcutil -t 2694 1000
Timestamp         S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT   
          728.0  20.29   0.00  60.08  39.51  73.12     10    0.034     1    0.025    0.059
          729.0  20.29   0.00  60.08  39.51  73.12     10    0.034     1    0.025    0.059
          730.0  20.29   0.00  60.08  39.51  73.12     10    0.034     1    0.025    0.059
          731.0  20.29   0.00  60.08  39.51  73.12     10    0.034     1    0.025    0.059
          732.0  20.29   0.00  60.08  39.51  73.12     10    0.034     1    0.025    0.059
上の例では、1秒間隔で表示しています。
広告
お問い合わせは sweng.tips@gmail.com まで。
inserted by FC2 system