先月まで,本連載ではJava SE 6u10の新機能を紹介してきました。今月からは,Java SE 6u10以外のアップデートリリースで取り入れられた機能を紹介していきます。

まずはじめに紹介するのが,JDK 6u7で導入されたVisualVMです。

なお,諸般の事情により本連載は今回より隔週の連載になります。今後,第1,第3週の月曜に記事が掲載されますので,ご了承ください。ただし,今月は第3週の月曜の21日が休みなので,その代わりに14日に掲載する予定です。

管理ツールVisualVM

Java SEはJ2SE 5.0より管理の機能が強化されてきました。J2SE 5.0の開発テーマにはMonitoring & Managementがあげられていることからも,ソフトウエア管理が重要視されていることがわかります。

この流れはJava SE 6でも変わりありません。本連載でもJava SE 6完全攻略の第1回から第12回にかけて,Java SE 6のソフトウエア管理に関する強化点を紹介してきました。

この強化に応じて,JDKは多くのソフトウエア管理のためのツールを提供しています。例えば,

  • jconsole
  • jstat
  • jmap
  • jstack
  • jhat

などがあります。また,プロファイラも標準で提供されています(詳しくはJava SE 6完全攻略 第5回を参照してください)。

しかし,これだけ多くのツールがあると,いつどのツールを使えばいいのか迷ってしまいがちです。

では,これらのツールをまとめてしまえばいいのではないかと思いますね。そんな折りに登場したのが今週から紹介するVisualVMです。

VisualVMは今まで単体の管理ツールで提供されてきた機能をまとめて提供するためのツールです。

JMX (Java Management Extension)を使った機能だけでなく,JVMTI (Java Virtual Machine Tool Interface)を使った機能を使用できます。つまり,プロファイラも統合されているということです。

また,プラグインにより,機能を追加することもできます。

VisualVMはもともとJDKとは関係なく,java.netでオープンソースとして開発が続けられてきました。現在もVisualVMプロジェクトで開発が続けられています。

なお,JDKに付属しているVisualVMはローカライズされておらず,英語の表記だけになっています。しかし,VisualVMプロジェクトで配布されているVisualVM(原稿執筆時点ではV1.1.1)にはマルチリンガル版があり,日本語の表記も可能です。

本連載ではJDKに付属しているVisualVMを使用しますが,日本語表記がお望みの場合VisualVMプロジェクトで配布されているパッケージをご使用ください。