このドキュメントは、Java Platform, Standard Edition Development Kit 7 のリリース (JDK 7 リリース) を使用して開発されたアプリケーションで発生する可能性がある問題のトラブルシューティングに役立ちます。このガイドでは特に、アプリケーションと Java HotSpot 仮想マシンとの間で発生する可能性がある問題に対処します。
このリリースの JDK リリースのトラブルシューティングツールに対する変更点 (前回のリリースと比較) の一覧については、「付録 D「このリリースのツールのサマリー」」を参照してください。
このドキュメントは現在、診断やモニタリングに使用可能なツールやオプションに関する情報を提供することに焦点を当てています。現在のところ、ガベージコレクションやパフォーマンス問題の診断に関する情報は含まれていません。
デスクトップテクノロジを使用した Java アプリケーションのトラブルシューティングのヘルプについては、次のガイドを参照してください。Java SE 7 デスクトップテクノロジのトラブルシューティングガイド。
Java HotSpot 仮想マシンは、Java コンパイラによって生成された命令の実行環境を提供します。JDK は Java 仮想マシンの 2 つ の実装を提供します。クライアント VM とサーバー VM です。これら 2 つのシステムは基本的に、同じ実行時システムとインタフェースする、2 つの異なるジャストインタイムコンパイラです。
クライアント VM。この実装は、基本的にクライアントまたはデスクトップアプリケーションに使用されるプラットフォームにインストールされます。クライアント VM は起動時間とメモリーフットプリントを縮小するように調整されています。これは、アプリケーションの起動時に -client コマンド行オプションを使用することで呼び出されます。
サーバー VM。この実装はすべてのプラットフォームにインストールされます。サーバー VM はプログラム実行速度が最大になるように設計されています。これは、アプリケーションの起動時に -server コマンド行オプションを使用することで呼び出されます。
デフォルト実装はプラットフォームとマシンのクラスに依存します。
Java Hotspot VM の詳細は、次の場所で見つけることができます。
このドキュメントの対象読者は、JDK 7 を使用する開発者と、JDK 7 で配備されたアプリケーションを保守するサポートまたは管理担当者です。
このドキュメントは、Java 仮想マシンのコンポーネントの概略を理解し、加えてガベージコレクション、スレッド、ネイティブライブラリなどの概念についてもある程度理解している読者を対象としています。さらに、Java アプリケーションのインストール先となるオペレーティングシステムについて読者が適度に習熟しているものと仮定します。
このドキュメントの最初の章では、JDK 7 でのトラブルシューティングに使用可能な各種診断/モニタリングツール、ユーティリティー、オプション、およびシステムプロパティーを紹介します。この章ではツールやオプションのカテゴリ別サマリーも提供します。ツールが使用可能かどうかはプラットフォーム (Solaris オペレーティングシステム (Solaris OS)、Linux、または Windows) に依存します。この章を読めば、使用可能なユーティリティーやオプションの機能がわかります。
第 2 章ではトラブルシューティングツールについて詳しく説明します。またこの章では、JDK のユーティリティーやオプションと組み合わせて使用可能な、オペレーティングシステムのツールやユーティリティーの一覧も示します。最後にこの章では、JDK で提供される API を使ってどのようにしたら新しいツールを開発できるかを詳しく説明します。
第 3 章から第 5 章では、メモリーリーク、クラッシュ、またはハングアップの問題が発生した際に試すべき手順を提示します。
第 6 章では、シグナルハンドラを使用するアプリケーションについて説明します。
最後の章では、バグレポートの提出前に試すべきことの提案、レポートの提出方法に関する指針、レポートで収集すべきデータに関する提案を提供します。
最後に、次のリファレンス領域ごとに付録があります。環境変数、コマンド行オプション、致命的エラーレポートの形式の詳細、このリリースのツールの一覧。
トラブルシューティングは非常に重要なトピックです。このドキュメントに関するフィードバックがある場合や、将来のバージョンでカバーできるトピックについての提案がある場合は、コメントをお送りください。
Java 2 Platform, Standard Edition 5.0 トラブルシューティングおよび診断ガイドでは、J2SE 1.5 向けのトラブルシューティング情報が記載されています。
さらに、使用可能なオンライントラブルシューティングリソースを次に示します。
Java SE 6 プラットフォームアプリケーションのモニタリングと管理に関する記事では、Java アプリケーションのもっとも一般的な問題について説明し、それらの問題をいくつかのツールを使ってトラブルシューティングする方法を提案しています。
Java SE 6 配備のトラブルシューティングに関する記事では、実行中の Java アプリケーションをトラブルシューティングするいくつかの方法を、例をまじえて解説しています。
Java チューニングのホワイトペーパーでは、Java プログラミング言語のパフォーマンスチューニングに関する情報、技法、および参照先を提供しています。
Java HotSpot VM のドキュメントでは、Java HotSpot 仮想マシンのパフォーマンスチューニング (ガベージコレクションのチューニングなど) に関する情報を提供しています。
Java Plug-in ガイドでは、トラブルシューティングの FAQ や、Java Plug-in の問題の診断を試みる際にトレースを有効にする方法に関する情報を提供しています。
Java Web Start FAQ には、Java Web Start で発生する可能性のある問題を扱ったトラブルシューティングセクションが含まれています。
バグデータベースは、問題や解決方法を検索する際に役立つリソースとなる可能性があります。
Solaris オペレーティングシステムフリーウェアサイトは、Solaris オペレーティングシステム向けにパッケージ化されたフリーウェアの情報源です。
Sunfreeware.com サイト (Solaris 用のフリーウェア) では、Solaris オペレーティングシステム向けにパッケージ化されたフリーウェアをダウンロードする方法を説明しています。
OpenSolaris サイトは、OpenSolaris テクノロジ向けの主要なオープンソースコミュニティーサイトです。
blastwave.org サイトは、Solaris コンピュータへの自動インストールが可能なフリーソフトウェアを皆で集める努力をサポートします。
Java テクノロジフォーラムを使えば、多くの場合でコミュニティーからサポートを得られます。フォーラムでは情報を共有したり、問題の解決方法を見つけたりできます。フォーラムの場所は、http://forums.oracle.com/forums/category.jspa?categoryID=285 です。
次の表は、この本で使用する表記規則を説明するものです。
|
次の表は、Solaris OS に含まれるシェルのデフォルト UNIX システムプロンプトおよびスーパーユーザープロンプトを示したものです。コマンド例に表示されるデフォルトシステムプロンプトは、Solaris のリリースに応じて異なります。
|
本ドキュメントでは第三者の URL を参照しており、この URL から追加の関連情報を取得できます。
注 - Oracle は、本ドキュメントに掲載された他社の Web サイトを利用できるかどうかについて責任を負いません。Oracle は、そのようなサイトまたはリソースから直接または間接的に利用できるいかなる内容、広告、製品、その他の物質についても保証を行うものではなく、また、責任を負うものでもありません。Oracle は、そのようなサイトまたはリソースから直接または間接的に利用できる内容、商品、サービスなどにより、またはそれらを使用あるいは信頼したことに関連して、実際に発生した損害または発生したとされる損害について、いかなる責任も負うものではありません。
多くの方がこのガイドのために、技術的な専門知識やその他のインプットを提供してくださいました。Alan Bateman (主要貢献者)、Tim Bell (主要貢献者およびレビューア)、Stephen Bohne、Mandy Chung、Stuart Clements、Uday Dhanikonda (担当エンジニアリングマネージャー)、Christine Dorffi、Daniel Fuchs、Jim Holmlund (主要貢献者およびレビューア)、David Holmes、Karen Kinnear、Peter LaPierre、James C. Lee、Antonia Lewis (ライター)、Teresa London、Srinivas Madishetty、Keith McGuigan、Kelly O'Hair、Coleen Phillimore、Leif Samuelsson、Bill Situ、A. Sundararajan、Jesse Suen、Adam Wisnewski。
次の表は、このガイドの各バージョンでの変更点を追跡したものです。
|