IDE の主な長所の 1 つに、多様な構成が可能であるという点が挙げられます。ニーズに合わせて、また自分の開発スタイルに合わせて作業環境をカスタマイズできます。ただし、ここでは実際に必要な正確な構成について分かりやすくするために、これらのオプションすべては取り上げていません。
ここでは、次のことを学びます。
プロジェクトのプロパティーや JDK レベルなどのプロジェクトレベルの設定については、プロジェクトの設定を参照してください。
IDE のデフォルト値の設定
IDE でデフォルト値を設定するための第一のツールは、「オプション」ウィンドウです。「オプション」ウィンドウは、メインメニューから「ツール」>「オプション」を選択して開きます。
IDE の設定は、「オプション」ウィンドウのカテゴリにグループ分けされています。「オプション」ウィンドウを開くと、デフォルトで、基本ビューが表示されます。基本ビューで、左区画のカテゴリをクリックすると、右区画に設定オプションが表示されます。カテゴリによって、右区画のタブまたはノードをクリックして、追加の設定を表示できます。
「オプション」ダイアログボックス
詳細設定にアクセスするには、「オプション」ウィンドウ下部にある「詳細オプション」ボタンをクリックします。この詳細表示で、ウィンドウの左区画にあるノードを選択すると、右区画に変更可能なプロパティーが表示されます。プロパティーの横に省略符号ボタン (...) がある場合は、プロパティーエディタを使用できます。
全般的な Java 設定値の設定
IDE の構成および設定で最初に行うべきことは、適切なバージョンの Java Standard Development Kit (JDK) を使用していることを確認することです。使用されている JDK が、自動的に、すべてのソースのコンパイルおよび実行の土台となるプラットフォームとして使用されます。詳細は、プロジェクトにおけるターゲット JDK の設定を参照してください。
IDE が動作している JDK を確認するには、「ヘルプ」>「製品について」を選択し、「詳細」タブをクリックします。「Java ホーム」に JDK の場所が示されています。デフォルトでは、IDE は、システムのレジストリに最新バージョンとして指定されている JDK を使用します。コンピュータにインストールされている JDK のバージョンが 1 つだけの場合は、これで問題ありません。ただし、複数の JDK バージョンがインストールされている場合は、起動スイッチを設定して、IDE が使用すべき JDK を明示的に指定した方が良い場合があります。これを指定するためには、コマンド行で --jdkhome <JDK フォルダスイッチ> (例: --jdkhome c:\jdk1.5.0_04) を使用するか、または netbeans.conf ファイルで JDK の場所を指定します。
Java 設定の定義でもう一つ重要なツールは、「オプション」ウィンドウの詳細ビューにある「Java ソース」ノードです。「編集」ノードの下にある「Java ソース」ノードには、IDE における Java ソースファイルの取り扱い方法に関する全般的な設定値が含まれています。「Java ソース」ノードには、次の設定があります。
-
自動構文解析遅延。ソースエディタでの入力や移動を行わなくなってから内部構文解析情報が再表示されるまでの時間 (ミリ秒単位) を指定します。デフォルト値は 2 秒です。IDE では、内部パーサーを使用して、現在の Java ソースファイルの情報を自動的に更新します。このプロパティーをゼロに設定すると、自動構文解析を無効にできます。このプロパティーが無効である場合は、ファイルの保存時とコンパイル時のみ Java ファイルが構文解析されます。
-
エラー注釈制限。開かれたそれぞれのファイルに対して、ソースエディタで強調表示されるエラーの量を設定します。Java ファイルについては、このプロパティーを 0 に設定して、エラー注釈を無効に設定してください。
-
文字列テーブル。テンプレート内に _USER_ マクロを指定し、テンプレート内に使用できるユーザー独自のマクロを作成できるようにします。
-
コンパイル状態を表示。選択した場合、Java クラスファイルをコンパイルする必要がある場合は、そのファイルのノードにコンパイル状態バッジが表示されます。
-
デフォルトエンコーディング。IDE が .java ファイルを表示および保存するときに使用するデフォルトのエンコーディングを指定します。エンコーディングの名前を入力するか、システムのデフォルトのエンコーディングを使用する場合は、空白のままにします。この設定は、IDE 内のクラスをコンパイルするときに使用するエンコーディングには影響ありません。
「オプション」ダイアログボックスでの Java ソースプロパティーの設定
特定の種類のファイルの取り扱い
IDE は、ほとんどのファイルの種類について、その標準のファイル拡張子を認識します。たとえば拡張子が .htm、.html、および .shtml のファイルは HTML ファイルとして扱うべきことを認識しています。ただし、XML のように、IDE が認識しない非標準のファイル拡張子を持つことがあるファイルの種類も数多くあります。
特定のファイル拡張子を持つすべてのファイルを特定の種類のファイルとして扱う場合は、「オプション」ウィンドウに進んで、「詳細オプション」ボタンをクリックし、「IDE 構成」>「システム」>「オブジェクトの種類」を順に展開します。「オブジェクトの種類」ノードには、現在 IDE が取り扱うように設定されているすべてのファイルの種類が含まれています。ここで「拡張子と MIME タイプ」プロパティーを使用して決まった種類のファイルとして扱うファイル拡張子を指定することができます。
たとえば JavaHelp[tm] マップファイルは、.jhm という拡張子を持つ XML ドキュメントです。この場合は、オブジェクトの種類の XML オブジェクトの「拡張子と MIME タイプ」の一覧に .jhm を追加することによって、すべての JavaHelp マップファイルを XML ドキュメントとして取り扱うことができます。
Ant 設定値の設定
「オプション」ウィンドウで追加の Ant 設定を設定するには、「オプション」ウィンドウを開き、左区画の「その他」カテゴリを選択して、右区画の Ant ノードをクリックします。次のプロパティーを指定できます。
-
Ant ホーム。IDE で使用される Ant 実行可能ファイルのインストールディレクトリ。
-
プロパティー。Ant を呼び出すたびに Ant スクリプトに渡すカスタムプロパティーを設定します。
-
クラスパス。Ant で使用される追加の JAR ファイルとディレクトリを指定します。「クラスパス」プロパティーにフルパスを入力します。
注: カスタムタスクの実行に必要な Ant クラスパスにのみ項目を追加する必要があります。「クラスパス」設定を使ってプロジェクトのソースフォルダのコンパイル用クラスパスや実行時クラスパスを管理しないでください。
IDE の機能の有効と無効
NetBeans IDE は完全にモジュール方式の IDE です。このことは、その機能が、コアの NetBeans インフラストラクチャーにプラグインされたモジュールによって実現されることを意味します。特定のモジュールが提供する機能を使用しない場合は、そのモジュールを無効にすることができます。不要なモジュールを無効にすると、IDE の起動時間の短縮とパフォーマンスの向上に役立ちます。この逆に、アップデートセンターから新しいモジュールをダウンロードすることによって、IDE に機能を追加することもできます。
モジュールの無効
モジュールを有効または無効にするのにもっとも便利なツールは、モジュールマネージャーです。モジュールを無効にすると、IDE はそのモジュールだけを無視します。モジュールが削除されるわけではないため、いつでも有効にし直すことができます。
モジュールマネージャーを開くには、「ツール」>「モジュールマネージャー」の順に選択します。モジュールマネージャーには、IDE に登録されているすべてのモジュールが表示されます。そのモジュールのアクティブなチェックボックスを選択または選択解除して、モジュールを有効または無効にできます。一覧のモジュールを選択し、「アンインストール」をクリックすると、モジュールをアンインストールできます。「アップデートセンター」から新しいモジュールを入手できるかどうかを確認するには、「更新」をクリックします。
モジュールマネージャー
モジュールマネージャーでは、関連するモジュールがモジュールグループにまとめられています。たとえば、Java グループには、Java 開発に関係するすべてのモジュールがまとめられています。モジュールグループの「有効」列のチェックボックスの選択を解除すると、そのグループのすべてのモジュールを無効にすることができます。また、モジュールグループのノードを展開し、個別にモジュールを無効にすることもできます。モジュールグループ内の一部のモジュールだけを無効にした場合、そのグループの「有効」列のチェックボックスが選択された状態 (ブール (論理) 型) になります。必要な設定を行なったら、「閉じる」をクリックして変更を適用します。
モジュールによっては、正しく機能するためにほかのモジュールを必要とするものがあります。そうしたモジュールを無効または有効にすると、そのモジュールが依存しているモジュールも有効または無効にしなければならないことがあります。その場合、IDE は、同時に無効または有効にするモジュールを示すダイアログを表示して確認を求めます。
アップデートセンターからの新規モジュールのインストール
アップデートセンターから新しいモジュールをダウンロードすることによって、IDE に機能を追加することができます。アップデートセンターに接続するには、メインウィンドウで「ツール」>「アップデートセンター」を選択します。「アップデートセンター」ウィザードで、接続するアップデートセンターを選択します。プロキシ情報が正しく設定されていて、インターネットに接続できることを確認してください。プロキシの設定は、ウィザードページの「プロキシ設定」ボタンを使用して編集できます。準備ができたら、「次へ」をクリックします。
ウィザードの 2 枚目のページは、アップデートセンターから入手できるすべてのモジュールの一覧です。ただし、ウィザードは、IDE にまだインストールされていないモジュールと、すでにインストールされているが新しいバージョンがあるモジュールのみ表示します。任意のモジュールを選択すると、そのモジュールに関する説明やアップデートセンターにあるバージョン番号、システムにインストールされているバージョン番号などの詳細情報を見ることができます。
インストールするモジュールをダウンロードするには、左区画でそのモジュールを選択し、「追加」ボタンをクリックします。準備ができたら、「次へ」ボタンをクリックしてモジュールの証明書を確認し、モジュールをインストールします。
NetBeans のパフォーマンスの改善
「メモリー」ツールバーを使用し、IDE のパフォーマンスを監視することができます。「メモリー」ツールバーを表示するには、ツールバー領域内の任意の場所を右クリックし、ポップアップメニューの「メモリー」を選択します。「メモリー」ツールバーには、現在の IDE のメモリーの使用量と、自動的にガベージコレクションが行われるまでの目安を示すスライドがあります。ガベージコレクションは、「メモリー」ツールバーをクリックすることによって手動で開始することもできます。
IDE を起動するときに使用する JVM スイッチを使用し、NetBeans のパフォーマンスを高めることができます。
IDE 起動スイッチの設定
IDE の設定には、Java 起動スイッチを使用できます。コマンド行から、または NetBeans インストールフォルダの etc フォルダにある netbeans.conf という特殊ファイルに入力して、IDE に起動スイッチを追加することができます。IDE 固有の起動スイッチを指定し、IDE が動作する JVM に直接、引数を渡すことができます。
たとえば、IDE が動作する JVM に対する -Xmx (最大ヒープサイズ) を設定するには、netbeans.conf ファイルに -J-Xmx64m 行を追加するか、UNIX システムの場合は、コマンド行から次のように入力して IDE を起動します。
./netbeans.sh -J-Xmx64m
Windows システムの場合は、次のように入力します。
netbeans.exe -J-Xmx64m
netbeans.conf ファイルには、空白または区切り行で区切ることによってさまざまな JVM スイッチを指定することができます。ただし、認識できないスイッチが渡された場合、JVM は起動しません。次の例に示すように、JVM は、このエラーがあると、その問題の原因となっているスイッチを示すメッセージを返します。
java -foo
Unrecognized option: -foo
Could not create the Java virtual machine.
使用可能な起動スイッチは、次の表に示すとおりです。
|
起動スイッチ
|
説明
|
|
-h --help
|
一般的な起動パラメータの説明を出力します。
|
|
--cp:p additional_classpath
|
IDE のクラスパスの前に、指定されたクラスパスを追加します。
|
|
--cp:a additional_classpath
|
IDE のクラスパスの後ろに、指定されたクラスパスを追加します。
|
|
--fontsize size
|
IDE のユーザーインタフェースで使用するフォントサイズをポイント数で設定します。このオプションを使用しない場合、フォントサイズは 11 ポイントになります。
|
|
--jdkhome jdk_home_dir
|
デフォルトの SDK ではなく、指定されたバージョンの Java[tm] 2 SDK を使用します。Microsoft[R] Windows システムの場合、デフォルトでは、ローダーはレジストリを検索して最新の SDK を使用します。
IDE で使用している SDK をアップグレードするには、ユーザーディレクトリをあらかじめバックアップしておきます。あとで以前の JDK に戻す必要がある場合は、すべての設定を完全に使用できるようにバックアップしたユーザーディレクトリに切り替えます。
IDE のユーザーディレクトリを切り替えるには、-userdir スイッチを使用します。 詳細は次で説明します。
|
|
-Jjvm_flag
|
指定されたフラグを JVM に直接渡します。
|
|
-J-Dsun.java2d.noddraw=true
|
画面表示に DirectX を使用しないことを指定します。この切り替えを行うと、グラフィックカードに障害がある一部の Microsoft Windows システムで問題が発生することを防ぐことができます。
|
|
-J-Dnetbeans.debugger.jpda.transport=dt_shmem userdir
|
「デバッグ」>「開始」コマンドでデバッグセッションを開始する場合に、強制的に IDE が共有メモリ接続を使用するようにします。すでに実行しているプロセスに対してデバッガを割り当てる場合には、このパラメータは何の働きもしません。
|
|
--laf UI_class_name
|
IDE の Look & Feel として指定されたクラスを選択します。次に、2 つの Look & Feel クラス例を示します。
-
com.sun.java.swing.plaf.motif.MotifLookAndFeel
-
javax.swing.plaf.metal.MetalLookAndFeel
|
|
--locale language[:country[:variant]]
|
指定されたロケールを使用します。
|
|
--open file
|
ソースエディタでファイルを開きます。
|
|
--open file:line number
|
ソースエディタでファイルを開き、指定された行を表示します。
|
|
--userdir userdir
|
ユーザー設定の保存場所にするユーザーディレクトリを、明示的に指定します。
現在のユーザーディレクトリは、「製品について」ダイアログで確認できます。「ヘルプ」>「製品について」を選択し、「詳細」タブをクリックします。このタブには、ユーザーディレクトリの場所と製品のその他の詳細情報が表示されます。
|
JVM スイッチによるパフォーマンスのチューニング
JVM には、メモリーの割り当ておよびガベージコレクションの動作を調整する標準および非標準の各種スイッチが用意されています。これらスイッチには、IDE のパフォーマンスの向上に役立つものがあります。
-X および特に -XX JVM スイッチは、JVM または JVM ベンダーによって異なるため、公式には「サポートされていない」ことに注意してください。ここで説明するスイッチは、Sun Microsystems J2SE 1.4.2 と J2SE 1.5 で使用できます。その他の JVM 実装のユーザーは、IDE を実行するにあたって、これらのスイッチを削除する必要がある場合もあります。
次の設定は、大部分のシステムで工場出荷時の設定より優れたパフォーマンスを生み出します。「固定領域」サイズの設定を除けば、これらのスイッチは、少し前から IDE のデフォルトになっており、netbeans.conf ファイルにすでに存在する可能性があります。
-
-J-Xverify:none
このスイッチは、Java バイトコード検査を無効にします。この結果、クラスの読み込みが早くなり、検査の目的のためだけに起動中にクラスを読み込む必要がなくなります。このスイッチは、起動時間を大幅に改善します。
-
-J-Xms32m
この設定は、初期ヒープサイズを 32M バイトに設定するよう Java 仮想マシンに指示します。ヒープへの初期メモリー割り当て量を JVM に指示することによって、IDE のメモリー消費量が多くなるにつれて、ヒープのサイズを増やす手間が省けます。
-
-J-Xmx128m
この設定は、Java 仮想マシンがヒープに使用するメモリーの最大量を指定します。この数字に上限を設けるということは、使用可能な物理 RAM を超えるメモリーを Java プロセスが使用できないことを意味します。メモリーの多いシステムの場合は、この上限値を大きくすることができます。128M バイトの設定は、256M バイトのシステムでもそれなりのパフォーマンスで動作するようにするのに役立ちます。注: 使用システムの物理 RAM 量に近い値あるいはそれより大きい値を設定しないでください。メジャーのコレクション中の極度のスワップの原因になります。
-
-J-XX:PermSize=20m
少し標準から外れた JVM スイッチですが、このスイッチもまた起動時間を短縮します。この設定は、クラスが保持されるメモリーの「固定領域」のサイズを指定します。IDE のクラス全体が一定量のメモリーを占有することは自明のことのため、必要なメモリー量に関するヒントを JVM に提供します。この設定によって、大部分のシステムで起動中のメジャーのガベージコレクションイベントが発生しなくなります。Sun ONE Studio 、または多くのモジュールで構成されるほかの IDE のユーザーは、この値を大きくすることを推奨します。
すべてではありませんが、一部のシステムで NetBeans のパフォーマンスに影響あることが報告されているか、多少影響があることが判明しているその他の JVM スイッチを次に示します。実際のメリットはケースによって異なりますが、試してみる価値はあるかもしれません。
-
-J-XX:CompileThreshold=100
このスイッチを使用すると、起動時間が長くなります。より多くのメソッドを、より早く、ネイティブコードに変換するように HotSpot JVM に指示します。報告されている結果では、インタプリタよりコンパイラで処理される UI コードの量が多くなるため、IDE が動作していると、パフォーマンスが良くなります。この値は、コンパイルの前に 1 つのメソッドを呼び出す必要がある回数を表します。
-
-J-XX:+UseConcMarkSweepGC -J-XX:+UseParNewGC
ガベージコレクションの中断という煩わしい問題が発生する場合は、これらのスイッチを試してください。このスイッチを指定すると、JVM がメジャーのガベージコレクションイベント、すなわち、ガベージコレクション全体を通じて「世界が止まる」イベントに対して異なるアルゴリズムを使用します。 (マルチプロセッサのワークステーションで JVM が動作している場合は、マイナーのコレクションについても、このことが当てはまります)。PermSize スイッチを使用する場合は、netbeans.conf ファイルに -J-XX:+CMSClassUnloadingEnabled の行も追加し、クラスの読み込み解除を有効にすることを推奨します (このコレクタを使用する場合、デフォルトでは、クラスの読み込み解除は有効になりません)。注: このコレクタが、ユニプロセッサのマシンのパフォーマンスを向上させるのか、低下させるのかは、まだ明確ではありません。
-
-J-XX:+UseParallelGC
いくつかのテストでは、少なくともメモリーがかなり十分に搭載されたユニプロセッサシステムでこのコレクションアルゴリズムを使用すると、マイナーのガベージコレクションに要する時間が半分になることが判明しています。このコレクタは、ギガバイトのヒープを持つマルチプロセッサシステムで最高の働きをするようにデザインされていますから、矛盾する結果であることに注意してください。メジャーのガベージコレクションに与える影響に関するデータはありません。注: このコレクタと -J-XX:+UseConcMarkSweepGC は相互排他の関係です。このアルゴリズムの使用をサポートする測定値の情報が、Perfomance Web サイトにあります。