NetBeans IDE Javaエディタでの静的コード分析

NetBeans IDE Javaエディタには、ソース・コード内の潜在的な問題を検索して不整合を検出するツールとして、静的コード分析機能があります。

このチュートリアルでは、アプリケーションを実際には実行せずに、FindBugsおよびNetBeans Javaヒントを使用してJavaコードの静的分析を実行する方法を学習します。

内容

このページの内容は、NetBeans IDE 8.0に適用されます

要件

このチュートリアルを完了するには、次のソフトウェアとリソースが必要です。

ソフトウェアまたはリソース 必須バージョン
NetBeans IDE バージョン8.0
Java Development Kit (JDK) バージョン7以降
library.zip NetBeansプロジェクト
jsr305-2.0.0.jar 静的分析ツールの効率を向上させるためのJava Specification Request

注意: jsr305-2.0.0.jarは、このチュートリアルの目的のためにlibrary.zip内に含まれています。

別のNetBeansプロジェクトを使用中の場合、jsr305-2.0.0.jarをダウンロードし、次の手順に従って、IDEのプロジェクトの「ライブラリ」フォルダに追加します。

  1. 「ライブラリ」フォルダを右クリックし、ポップアップ・メニューから「JAR/フォルダの追加」を選択します。
  2. 「JAR/フォルダの追加」ダイアログ・ボックスで、ダウンロードされたjsr305-2.0.0.jarファイルのパスを指定し、「開く」をクリックします。

    jsr305-2.0.0.jarの追加

チュートリアルの環境の設定

前出の一覧表示された必須ソフトウェアに加え、次のものもコンピュータにインストールしておくようにしてください。

  • library.zipファイルをNetBeansプロジェクト・フォルダに解凍し、NetBeans IDEで開きます。
  • FindBugsプラグインをダウンロードし、次の手順でNetBeans IDEにインストールする必要があります。
    1. IDEのメイン・メニューから「ソース」>「検査」を選択します。
    2. 「検査」ダイアログ・ボックスで、「インストール」をクリックします。

      「検査」ダイアログ・ボックス

    3. 「インストーラ」ダイアログ・ボックスで「次」をクリックし、インストールを続行します。

      プラグインのインストール

    4. ライセンス契約を確認し、ライセンス契約オプションを選択して、「インストール」をクリックします。
    5. インストールが完了したら、「終了」をクリックします。

事前定義された構成の使用

NetBeans IDEでコードを検査するとき、事前定義された次の構成を使用できます。

「すべてのアナライザ」の実行

すべてのアナライザ」構成によって、IDEで使用可能なすべての静的コード分析ツールがデプロイされます。

すべてのアナライザ」構成を実行するには:

  1. IDEのメイン・ツールバーから「ソース」>「検査」を選択します。
  2. 「検査」ダイアログ・ボックスの「スコープ」ドロップダウン・リストで、「現在のプロジェクト(library)」を選択します。
  3. 「構成」ドロップダウン・リストで、「すべてのアナライザ」構成を選択します。

    選択された「すべてのアナライザ」構成

    注意: この構成を最初に実行する前に、FindBugsプラグインをインストールする必要があります。

  4. 「検査」をクリックします。
    分析の結果が「インスペクタ・ウィンドウ」の左にツリー・ビューとして表示されます。

    実行された「すべてのアナライザ」構成

    右には、ツリー・ビューで現在選択されている項目の説明が表示されます。

    説明

    注意: コードの一部が問題ありと報告され、そのコードを変更せずにそのまま使用する場合、IDEでは、このコードに対する警告を抑制できます。「インスペクタ・ウィンドウ」のツリー・ビューの警告をダブルクリックし、ソース・エディタに移動します。[Alt]-[Enter]を押し、表示されたヒントの末尾にある黒い右矢印をクリックして、「警告の抑制 - (警告名)」を選択します。

    警告の抑制

NetBeans Javaヒントに対するJavaコードの確認

IDEで使用可能な「NetBeans Javaヒント」構成を使用すると、対象のソース・コードが、事前定義されたコーディング標準ルールを満たしているかどうかを確認できます。つまり、一連のNetBeans Javaヒント(コード検査とも呼ばれます)をJavaソース・ファイルに適用します。

NetBeans Javaヒント」構成を実行するには:

  1. IDEのメイン・ツールバーから「ソース」>「検査」を選択します。
  2. 「検査」ダイアログ・ボックスの「スコープ」ドロップダウン・リストで、「開いているプロジェクト」(1つのlibraryプロジェクトのみがIDEで開いている場合)、または「現在のプロジェクト(library)」を選択します。

    注意:NetBeans Javaヒント」構成のスコープ(ファイル、パッケージ、またはプロジェクト)を定義できます。

  3. 「構成」ラジオ・ボタンを選択し、ドロップダウン・リストで「NetBeans Javaヒント」を選択します。

    「NetBeans Javaヒント」の選択

  4. 「検査」をクリックします。
    IDEでは、「インスペクタ・ウィンドウ」内のツリー・ビューに、「NetBeans Javaヒント」構成を使用した分析の結果が表示されます。

    実行された「NetBeans Javaヒント」構成

  5. 「インスペクタ」ウィンドウで、左のツールバーのカテゴリ化ボタンをクリックし、カテゴリにグループ化された問題を表示します。

    カテゴリにグループ化された検出済の問題

    次の表に、「インスペクタ・ウィンドウ」で使用可能なコマンドを示します。
    アイコン 名前 機能
    「リフレッシュ」アイコン リフレッシュ 静的分析結果のリフレッシュされたリストを表示します。
    「前」アイコン 前の問題 静的分析結果リスト内の前の問題を表示します。
    「次」アイコン 次の問題 静的分析結果リスト内の次の問題を表示します。
    カテゴリ化アイコン カテゴリ化 ファイル、プロジェクト、またはパッケージ内で検出された問題の縮小したビューと、検出されたすべての問題をカテゴリ化したビューを切り替えます。

FindBugsによるJavaコード内の潜在的な問題の検索

IDEで使用可能な「FindBugs」構成を使用すると、コード内の潜在的な問題を広範囲に検索できます。これは、Javaでコード分析を行うためのポピュラなオープン・ソースであるFindBugsツールを呼び出します。bug報告が生成され、検出されたすべての問題がカテゴリ化されてNetBeans IDEの「インスペクタ・ウィンドウ」に表示され、報告内のbugから疑いのあるコードに直接移動できます。また、隣接するウィンドウでbugの説明を参照したり、左フレームの最上部にあるポインタを使用してFindbugsのBugの説明ページでbugを確認できます。

注意: この構成を最初に実行する前に、FindBugsプラグインをインストールする必要があります。

FindBugs」構成を使用してJavaコード内の潜在的なエラーを識別するには、次の手順を行います:

  1. NetBeans IDEでlibraryプロジェクトを開き、メイン・ツールバーから「ソース」>「検査」を選択します。
  2. 「検査」ダイアログ・ボックスの「スコープ」ドロップダウン・リストで、「現在のプロジェクト(library)」を選択します。

    注意:FindBugs」構成を使用して、ファイル、パッケージまたはプロジェクトを検査できます。

  3. 「検査」ダイアログ・ボックスで、「FindBugs」構成を選択します。

    選択された「FindBugs」構成

  4. 「検査」ボタンをクリックして、静的コード分析を開始します。
    ソース・エディタの下にある「インスペクタ・ウィンドウ」に、静的コード分析の結果が表示されます。
    右のフレームに、選択したbugの説明が表示されます。

    インスペクタ・ウィンドウ

  5. または、左のツールバーのカテゴリ化ボタンをクリックし、カテゴリにグループ化されたbugを表示します。

    カテゴリにグループ化された検出済のbug

注意:

  • 展開したリストで問題をダブルクリックすると、IDEでは、報告された問題がソース・エディタに表示されます。
    [Alt]-[Enter]を押し、ソース・コード内にbugの説明を表示します。

    ソース・エディタ内の報告された問題

  • 潜在的なエラーがコード内で強調表示され、ソース・エディタの左マージンに感嘆符アイコン(感嘆符アイコン)が表示されます。

JavaエディタでFindBugsを有効にするには:

  1. IDEのメイン・ツールバーから「ツール」>「オプション」を選択します。
  2. 「エディタ」タブを選択し、「ヒント」を選択します。
  3. 「言語」ドロップダウン・リストで「FindBugs」を選択します。

    ソース・エディタでのFindBugsの有効化

  4. 「エディタ」オプションで「FindBugsの実行」を選択します。
  5. 「OK」をクリックします。
    ここで、bugが報告されたソース・コード内で[Alt]-[Enter]を押し、表示されたヒントの末尾にある黒い右矢印をクリックすると、IDEでは、潜在的なbugに対するいくつかの修正オプションが表示されます。

    ソース・エディタで有効化されたFindBugs

「デフォルト」構成のカスタマイズ

コードでの作業中に、事前定義された構成に独自のNetBeans JavaヒントやFindbugsのbugが含まれるように、構成のカスタマイズが必要になる場合があります。

事前定義された「デフォルト」構成を独自のニーズにあわせて調整するには、次の手順を行います:

  1. IDEのメイン・ツールバーから「ソース」>「検査」を選択します。
  2. 「検査」ダイアログ・ボックスで「構成」ラジオ・ボタンを選択し、「デフォルト」構成を選択します。
  3. 「管理」をクリックします。
    IDEで「構成」ダイアログ・ボックスが表示されます。

    「構成」ダイアログ・ボックス

  4. 「構成」ドロップダウン・リストで「デフォルト」が選択されていることを確認します。
  5. 「アナライザ」ドロップダウン・リストで「JRE 8プロファイル準拠」「NetBeans Javaヒント」または「FindBugs」アナライザを選択します。
  6. 前のステップで選択したアナライザに応じて、検証するプロファイル、デフォルト構成に含める検査またはbugを選択します。

    検査の選択

  7. 「OK」をクリックして「デフォルト」構成を保存します。

構成の作成と削除

Javaコードの静的分析で使用する独自の構成を作成および削除できます。

構成を作成するには、次の手順を行います:

  1. IDEのメイン・ツールバーから「ソース」>「検査」を選択します。
  2. 「検査」ダイアログ・ボックスで「構成」ラジオ・ボタンを選択し、「デフォルト」構成を選択します。
  3. 「管理」をクリックします。
  4. 「構成」ダイアログ・ボックスで、「構成」ドロップダウン・リストの末尾にある黒い矢印をクリックし、「新規」をクリックします。

    構成の作成

    newConfig」構成が作成され、「構成」ドロップダウン・リストに追加されます。

    「構成」リスト内の「newConfig」

  5. 「アナライザ」ドロップダウン・リストで「JRE 8プロファイル準拠」「NetBeans Javaヒント」または「FindBugs」選択します。
  6. 構成に含めるプロファイル、検査またはbugを指定します。
  7. 「OK」をクリックして編集内容を保存し、「構成」ダイアログ・ボックスを閉じます。
    作成された「newConfig」構成が、「検査」ダイアログ・ボックスの「構成」ドロップダウン・リストで選択可能になります。

    作成された新しい構成

注意: 構成を名前変更するには、「構成」ドロップダウン・リストで「newConfig」構成を選択し、「構成」ドロップダウン・リストの末尾にある黒い矢印をクリックして、「名前変更」を選択します。新しい名前(たとえば、renamedConfig)を入力し、[Enter]を押して編集内容を保存します。

名前変更したnewConfig

構成を削除するには、次の手順を行います:

  1. IDEのメイン・ツールバーから「ソース」>「検査」を選択します。
  2. 「検査」ダイアログ・ボックスで「構成」ラジオ・ボタンを選択し、削除する構成(この例ではrenamedConfig)を選択します。
  3. 「管理」をクリックします。
  4. 「構成」ダイアログ・ボックスで、「構成」ドロップダウン・リストの末尾にある黒い矢印をクリックし、「削除」をクリックします。

    renamedConfigの削除

  5. 「構成の削除」ダイアログ・ボックスで、「はい」をクリックして構成の削除を確認します。

    renamedConfigの削除の確認

    renamedConfig」構成が「構成」リストから削除されます。

注意: 1つ以上のNetBeans Javaヒントを提供するNetBeansモジュールの作成方法については、NetBeans Javaヒント・モジュールのチュートリアルを参照してください。

単一の検査の実行

NetBeans IDEで静的コード分析機能を使用すると、ソース・コード内の特定の欠陥についてコードを検査できます。

単一の検査でJavaソース・コード内の特定の不整合や問題を検出するには、次の手順を行います:

  1. IDEのメイン・メニューから「ソース」>「検査」を選択します。
  2. 「検査」ダイアログ・ボックスの「スコープ」ドロップダウン・リストで、検査対象のファイル、パッケージ、またはプロジェクトを選択します。
  3. 「単一の検査」を選択し、次のいずれかを実行します。
    • 「単一の検査」ドロップダウン・リストで、ソース・コード分析で使用する単一のNetBeans JavaヒントまたはFindbugsのbugまでスクロールして選択します。

      「単一の検査」ドロップダウン・リスト

    • 「参照」をクリックして「構成」ダイアログ・ボックスを開き、「アナライザ」ドロップダウン・リストでアナライザを指定し、ソース・コード分析で使用するプロファイル(JRE 8プロファイル準拠アナライザの場合)、単一の検査(NetBeans Javaヒント・アナライザの場合)または単一のbug (FindBugsアナライザの場合)を指定します。「OK」をクリックして「構成」ダイアログ・ボックスを閉じます。

      「検査の参照」ダイアログ・ボックス

  4. 「検査」ダイアログ・ボックスで、「検査」をクリックしてソース・コード分析を実行します。
    検査操作が完了すると、ソース・エディタの下にある「インスペクタ・ウィンドウ」に、検出されたコードまたはbugに適用可能なヒントが表示されます。

サマリー

このチュートリアルでは、NetBeans IDEの静的コード分析機能の最も頻繁に使用される方法を説明しています。この静的コード分析機能では、プロジェクト・スコープでカスタム・リファクタリングを実行したり、IDEで開かれている複数のプロジェクトに特定のリファクタリング構成を適用したりすることもできます。

先頭


関連項目

関連する資料については、次のドキュメントを参照してください。

先頭

get support for the NetBeans

Support


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2013, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo