blob: 1eeff33bdf6fff34f8ca7cd1f1ff0a32e7df3140 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta name="KEYWORDS" content="NETBEANS, TUTORIAL, GUIDE, USER, DOCUMENTATION">
<meta name="DESCRIPTION" content="This tutorial shows you to configure standard Java
and Java web projects in NetBeans IDE. Topics include setting the JDK, setting the classpath,
setting sub-projects, enabling/disabling incremental compilation, sharing
project libraries, customizing the build script, setting run configurations.">
<title>Javaプロジェクトの作成、インポート、および構成 - NetBeans IDEチュートリアル</title>
<link rel="StyleSheet" href="../../../netbeans.css" type="text/css">
<!-- Copyright (c) 2009 - 2011, Oracle and/or its affiliates. All rights reserved. -->
<!-- Use is subject to license terms.-->
<meta HTTP-EQUIV="Content-Type" Content="text/html; charset=UTF-8"></head>
<body>
<h1>Javaプロジェクトの作成、インポート、および構成</h1>
<p>このガイドでは、Javaプロジェクトの設定および構成を行うための、NetBeans IDEの主要な機能について概説します。また、IDEで生成されたビルド・スクリプトの構成をカスタマイズする方法についての情報も提供します。</p>
<p><b>目次</b></p>
<img alt="このページの内容は、NetBeans IDE 7.4に適用されます" class="stamp" src="../../../images_www/articles/74/netbeans-stamp.png" title="このページの内容は、NetBeans IDE 7.4に適用されます">
<ul class="toc">
<li><a href="#ide-concepts">プロジェクトの基本的な概念</a>
<ul class="toc"><li><a href="#ide-projects">プロジェクト</a></li>
<li><a href="#ide-ant">Ant</a></li></ul></li>
<li><a href="#projects-creating">プロジェクトの作成</a></li>
<li><a href="#projects-importing">プロジェクトのインポート</a>
<ul class="toc"><li><a href="#import-eclipse">Eclipseワークスペースのインポート</a></li>
<li><a href="#existing-java-sources">既存のソースに基づいたJavaプロジェクトの設定</a></li>
<li><a href="#existing-web-sources">既存のソースに基づいたWebプロジェクトの設定</a></li>
<li><a href="#free-form">自由形式プロジェクト</a></li>
</ul>
</li>
<li><a href="#projects-configuring">クラスパスおよびその他のプロジェクト設定の構成</a>
<ul class="toc">
<li><a href="#projects-main">メイン・プロジェクトの設定</a></li>
<li><a href="#projects-jdk">プロジェクトにおけるターゲットJDKの設定</a></li>
<li><a href="#projects-classpath">プロジェクトのクラスパスの管理</a></li>
<li><a href="#projects-dependencies">プロジェクト間の依存性の管理</a></li>
<li><a href="#projects-shared-libraries">プロジェクト・ライブラリの共有</a></li>
<li><a href="#projects-jdk-javadoc">IDEで使用可能なJDKのJavadocの作成</a></li>
<li><a href="#projectsjws">Java Web Startの有効化</a></li>
</ul>
</li>
<li><a href="#building">アプリケーションのビルド</a>
<ul class="toc">
<li><a href="#building-commands">プロジェクト、パッケージ、およびファイルのビルド</a></li>
<li><a href="#building-compile-on-save">保存時にコンパイル</a></li>
<li><a href="#building-fixing">コンパイル・エラーの修正</a></li>
<li><a href="#building-filtering">出力ファイルのフィルタリング</a></li>
</ul>
</li>
<li><a href="#deploy">アプリケーションの実行</a>
<ul class="toc">
<li><a href="#deploy-projects">プロジェクトおよびファイルの実行</a></li>
<li><a href="#deploy-options">実行時オプションのカスタマイズ</a></li>
<li><a href="#deploy-classpath">実行時クラスパスの設定</a></li>
<li><a href="#deploy-args">メイン・クラスと実行時引数の設定</a></li>
<li><a href="#deploy-jvm">JVM引数の設定</a></li>
</ul></li>
<li><a href="#build-script">ビルド・スクリプトのカスタマイズ</a>
<ul class="toc">
<li><a href="#ant-editing">Antスクリプトの編集および実行</a></li>
<li><a href="#ant-custom-task">カスタムAntタスクの書込み</a></li>
</ul></li>
<li><a href="#seealso">関連項目</a></li>
</ul>
<p><b>このチュートリアルを完了するには、次のソフトウェアとリソースが必要です。</b></p>
<table>
<tbody>
<tr>
<th class="tblheader" scope="col">ソフトウェアまたはリソース</th>
<th class="tblheader" scope="col">必須バージョン</th>
</tr>
<tr>
<td class="tbltd1"><a href="http://www.netbeans.org/downloads/index.html">NetBeans IDE</a></td>
<td class="tbltd1">バージョン7.4</td>
</tr>
<tr>
<td class="tbltd1"><a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Java Development Kit (JDK)</a></td>
<td class="tbltd1">バージョン6または7</td>
</tr>
</tbody>
</table>
<!-- TODO update screenshots-->
<a name="ide-concepts"></a><h2>プロジェクトの基本的な概念</h2>
<p>この項では、IDEのプロジェクト・システムに関する背景情報の概要を示します。</p>
<div class="indent">
<a name="ide-projects"></a><h3 class="tutorial">プロジェクト</h3>
<p>
IDEでは、常にプロジェクトの内部で作業をします。IDEプロジェクトには、ソース・ファイルに加えて、クラスパスに属するものについてのメタデータや、プロジェクトのビルド方法および実行方法などに関するメタデータが含まれています。IDEでは、<tt>nbproject</tt>という名前のプロジェクト・フォルダにプロジェクト情報が格納されます。このプロジェクト・フォルダには、ビルドや実行の設定を制御するAntビルド・スクリプトとプロパティ・ファイル、およびAntターゲットをIDEコマンドにマップする<code>project.xml</code>ファイルが含まれています。</p>
<p class="notes"><b>注意:</b> IDEでは、ソース・ディレクトリはデフォルトでプロジェクト・フォルダ内に配置されますが、ソース・ディレクトリをプロジェクト・フォルダ内に配置することは必須ではありません。</p>
<a name="ide-ant"></a><h3 class="tutorial">Ant</h3>
<p><a href="http://ant.apache.org/">Apache Ant</a>はJavaベースのビルド・ツールで、開発用のビルド環境や実行環境を標準化および自動化するために使用します。IDEのプロジェクト・システムは、直接Antに基づいています。「プロジェクトを消去してビルド」や「デバッグ」などのプロジェクト・コマンドはすべて、プロジェクトのAntスクリプト内のターゲットをコールします。このため、IDE内と同じようにIDEの外部でプロジェクトをビルドおよび実行できます。</p>
<p>IDEで作業するためにAntについて理解する必要はありません。基本的なコンパイル・オプションと実行時オプションはすべてプロジェクトの「プロジェクト・プロパティ」ダイアログ・ボックスに設定可能で、IDEによってプロジェクトのAntスクリプトが自動的に更新されます。Antに精通している場合は、標準プロジェクトのAntスクリプトをカスタマイズしたり、プロジェクト用に独自のAntスクリプトを記述したりできます(詳細は、<a href="http://ant.apache.org/manual/index.html">Apache User Manual</a>を参照してください)。</p>
</div>
<a name="projects-creating"></a><h2>プロジェクトの作成</h2>
<p><b>新しいプロジェクトを作成する</b></p>
<ul>
<li><tt>ファイル</tt>」><tt>「新規プロジェクト」(Windowsの場合は[Ctrl]-[Shift]-[N]、OS Xの場合は[Cmd]-[Shift]-[N])</tt>を選択します。</li>
</ul>
<p>新規プロジェクト・ウィザードが表示されたら、プロジェクトに適したテンプレートを選択して、ウィザードの残りの手順を完了します。プロジェクト・テンプレートのアイコンはグレーで表示されることがあり、その場合は、このプロジェクト・タイプがアクティブ化されていないことを示します。プロジェクトの作成を続行すると、IDEでこの機能がアクティブ化されます。 </p>
<p>IDEには、JavaおよびJava Webアプリケーション用の次の標準プロジェクト・テンプレートが含まれています。</p>
<ul>
<li><b>Javaアプリケーション。</b>メイン・クラスを持つスケルトンJava SEプロジェクトを作成します。このテンプレートを使用する簡単なチュートリアルについては、<a href="javase-intro.html">一般的なJavaアプリケーションの開発およびデプロイ</a>を参照してください。
</li>
<li><b>Javaクラス・ライブラリ。</b>メイン・クラスを持たないスケルトンJavaクラス・ライブラリを作成します。このテンプレートを使用する簡単なチュートリアルについては、<a href="javase-intro.html">一般的なJavaアプリケーションの開発およびデプロイ</a>を参照してください。</li>
<li><b>既存のソースを使用するJavaプロジェクト。</b>独自のJavaソースに基づいたJava SEプロジェクトを作成します。後述する<a href="#existing-java-sources">既存のソースに基づいたJavaプロジェクトの設定</a>を参照してください。</li>
<li><b>Webアプリケーション。</b>様々なWebフレームワークを追加するオプションを含む、スケルトンWebアプリケーションを作成します。このテンプレートの使用例については、<a href="../web/quickstart-webapps.html">Webアプリケーション開発入門</a>を参照してください。</li>
<li><b>既存のソースを使用するWebアプリケーション。</b>独自のWebソースおよびJavaソースに基づいたWebプロジェクトを作成します。後述する<a href="#existing-web-sources">既存のソースに基づいたWebプロジェクトの設定</a>を参照してください。</li>
</ul>
<p>また、IDEには、JavaFXアプリケーション、EJBモジュール、エンタープライズ・アプリケーション、NetBeansモジュールなどのテンプレートも用意されています。標準プロジェクト・テンプレートの完全なリストについては、<i>NetBeans IDEによるアプリケーションの開発</i><a href="http://www.oracle.com/pls/topic/lookup?ctx=nb7400&amp;id=NBDAG371">標準プロジェクト・テンプレート</a>を参照してください。 </p>
<p>JavaとWebのプロジェクト・カテゴリには、自由形式プロジェクトのテンプレートもあります。自由形式のテンプレートでは、プロジェクトに既存のAntスクリプトを使用できますが、手動による構成が必要です。後述する<a href="#free-form">自由形式プロジェクト</a>を参照してください。</p>
<p>プロジェクトの作成が終了すると、IDEでプロジェクトが開き、「プロジェクト」ウィンドウにプロジェクトの論理構造が表示され、「ファイル」ウィンドウにファイル構造が表示されます。</p>
<ul>
<li>
「プロジェクト」ウィンドウは、プロジェクト・ソースへのメインのエントリ・ポイントです。JavaパッケージやWebページなどの重要なプロジェクトの内容の論理ビューを表示します。プロジェクト・ノードを右クリックすると、プロジェクトをビルド、実行、およびデバッグするためのコマンドや、「プロジェクト・プロパティ」ダイアログ・ボックスを開くためのコマンドが含まれるポップアップ・メニューにアクセスできます。「プロジェクト」ウィンドウは、「ウィンドウ」>「プロジェクト」(Windowsの場合は[Ctrl]-[1]、OS Xの場合は[Cmd]-[1])を選択して開くことができます。</li>
<li>
「ファイル」ウィンドウには、「プロジェクト」ウィンドウでは表示されないファイルやフォルダなど、プロジェクトのディレクトリ・ベースの構造が表示されます。「ファイル」ウィンドウから、プロジェクトのビルド・スクリプトやプロパティ・ファイルなど、プロジェクトの構成ファイルを開いて編集できます。また、コンパイル済クラス、JARファイル、WARファイル、および生成されたJavadocドキュメントなどのビルド出力も表示できます。「ファイル」ウィンドウは、「ウィンドウ」>「ファイル」(Windowsの場合は[Ctrl]-[2]、OS Xの場合は[Cmd]-[2])を選択して開くことができます。</li>
</ul>
<p class="align-center"><a href="../../../images_www/articles/72/java/project-setup/files-project-window.png" rel="lytebox" title="「ファイル」ウィンドウと「プロジェクト」ウィンドウ"> <img alt="「ファイル」ウィンドウと「プロジェクト」ウィンドウ" border="1" src="../../../images_www/articles/72/java/project-setup/files-project-window-small.png"></a></p>
<p class="notes"><b>注意:</b> プロジェクト・ディレクトリ外のファイルやディレクトリにアクセスする必要がある場合は、「お気に入り」ウィンドウを使用します。「お気に入り」は、「<tt>ウィンドウ</tt>」><tt>「お気に入り」((Windowsの場合は[Ctrl]-[3]、OS Xの場合は[Cmd]-[3])</tt>を選択して開きます。「お気に入り」ウィンドウを右クリックし、「お気に入りに追加」を選択すると、「お気に入り」ウィンドウにフォルダやファイルを追加できます。</p>
<a name="projects-importing"></a><h2 class="tutorial">プロジェクトのインポート</h2>
<p>この項では、IDEへのプロジェクトの初期インポートの処理方法について説明します。</p>
<div class="indent">
<a name="import-eclipse"></a><h3 class="tutorials">Eclipseワークスペースのインポート</h3>
<p>Eclipseプロジェクトの場合は、Eclipseプロジェクトのインポート・ウィザードを使用して、Eclipseワークスペース内のプロジェクトからNetBeansプロジェクトを作成し、プロジェクトのクラスパスやその他の設定をインポートできます。Eclipseプロジェクトのインポート・ウィザードを使用すると、NetBeansプロジェクトを手動で作成したり構成する必要がありません。「<tt>ファイル</tt>」>「<tt>プロジェクトをインポート</tt>」>「<tt>Eclipseプロジェクト</tt>」を選択してウィザードを開きます。ウィザードの動作や、EclipseプロジェクトとNetBeansプロジェクトで同時に作業する方法については、<a href="import-eclipse.html">EclipseプロジェクトのNetBeans IDEへのインポート</a>を参照してください。</p>
<a name="existing-java-sources"></a><h3 class="tutorials">既存のソースに基づいたJavaプロジェクトの設定</h3>
<p>NetBeans以外で開発されたその他のJavaプロジェクトについては、新規プロジェクト・ウィザードで「既存のソース」テンプレートを使用して、NetBeansプロジェクトを作成します。ウィザードで、ソースの場所を識別し、NetBeansプロジェクト・メタデータの場所を指定します。その後、「プロジェクト・プロパティ」ダイアログ・ボックスを使用して<a href="#projects-configuring">プロジェクトを構成</a>します。</p>
<p><b>既存のJavaアプリケーション用にNetBeansプロジェクトを設定するには:</b></p>
<ol>
<li><tt>ファイル</tt>」><tt>「新規プロジェクト」(Windowsの場合は[Ctrl]-[Shift]-[N]、OS Xの場合は[Cmd]-[Shift]-[N])</tt>を選択します。 </li>
<li><tt>Java</tt>」>「<tt>既存のソースを使用するJavaプロジェクト</tt>」を選択します。「次」をクリックします。 </li>
<li>ウィザードの名前と場所ページで、次の手順を実行します。
<ul>
<li>プロジェクト名を入力します。</li>
<li>(オプション)プロジェクト・フォルダの場所を変更します。</li>
<li>(オプション) IDEで使用されるビルド・スクリプトの名前を変更します。ソースのビルドに使用される<code>build.xml</code>という名前のビルド・スクリプトがすでに存在する場合は、これを行うことをお薦めします。</li>
<li>(オプション)「ライブラリの格納用に専用フォルダを使用」チェックボックスを選択し、ライブラリ・フォルダの場所を指定します。このオプションの詳細は、<a href="#projects-shared-libraries">プロジェクト・ライブラリの共有</a>を参照してください。</li>
<li>(オプション)「メイン・プロジェクトとして設定」チェックボックスを選択します。このオプションを選択すると、メイン・プロジェクトを消去してビルド([Shift]-[F11])などのコマンドのキーボード・ショートカットが、このプロジェクトに適用されます。</li>
</ul></li>
<li>「次」をクリックして、ウィザードの既存のソース・ページに進みます。</li>
<li>「ソース・パッケージ・フォルダ」ペインで、「フォルダの追加」をクリックします。次に、ソースに移動し、ソース・ルートを選択して「開く」をクリックします。
<p class="notes">ソース・コードが含まれているフォルダを追加するときには、パッケージ・ツリー内で最上位のフォルダを含むフォルダを追加する必要があります。たとえば、<code>com.mycompany.myapp.ui</code>パッケージの場合、<code>com</code>フォルダを含むフォルダを追加します。 </p></li>
<!-- TODO Note that source roots all have to have the same classpath-->
<li>(オプション)「テスト・パッケージ・フォルダ」ペインで「フォルダの追加」をクリックして、JUnitパッケージ・フォルダを含むフォルダを選択します。 </li>
<li>「次」をクリックして、ウィザードの含める/除外するページに進みます。</li>
<li>(オプション)ウィザードの含める/除外するページで、プロジェクトに含めるファイル、またはプロジェクトから除外するファイルの、ファイル名パターンを入力します。デフォルトでは、ソース・ルートのすべてのファイルが含まれます。</li>
<li> 「終了」をクリックします。
</li>
</ol>
<p><a name="existing-web-sources"></a></p>
<h3 class="tutorials">既存のソースに基づいたWebプロジェクトの設定</h3>
<p>NetBeans以外で開発されたWebプロジェクトについては、新規プロジェクト・ウィザードで「既存のソース」テンプレートを使用して、NetBeansプロジェクトを作成します。ウィザードで、ソースの場所を識別し、NetBeansプロジェクト・メタデータの場所を指定します。その後、「プロジェクト・プロパティ」ダイアログ・ボックスを使用して<a href="#projects-configuring">プロジェクトを構成</a>します。</p>
<p class="notes"><b>注意:</b> プロジェクトが最初にEclipseで開発された場合は、新規プロジェクト・ウィザードのかわりにEclipseプロジェクトのインポート・ウィザードを使用することで時間を節約できる可能性があります。Eclipseプロジェクトのインポート・ウィザードでは、複数のプロジェクトをそれらの構成も含めて同時にインポートできます。<a href="import-eclipse.html">EclipseプロジェクトのNetBeans IDEへのインポート</a>を参照してください。</p>
<p><b>既存のWebアプリケーション用にNetBeansプロジェクトを設定するには:</b></p>
<ol>
<li><tt>ファイル</tt>」><tt>「新規プロジェクト」(Windowsの場合は[Ctrl]-[Shift]-[N]、OS Xの場合は[Cmd]-[Shift]-[N])</tt>を選択します。 </li>
<li><tt>Java Web</tt>」>「<tt>既存のソースを使用するWebアプリケーション</tt>」を選択します。「次」をクリックします。 </li>
<li>ウィザードの名前と場所ページで、次の手順を実行します。
<ul>
<li>「場所」フィールドに、Webアプリケーションのソース・ルート・フォルダおよびWebページ・フォルダを含むフォルダを入力します。</li>
<li>プロジェクト名を入力します。</li>
<li>(オプション)プロジェクト・フォルダの場所を変更します。</li>
<!--TODO info on the fact that the sources might live in different places-->
</ul></li>
<!--<li>(Optional) Change the name of the build script used by the IDE.
This might be desirable if there is already a build script called
<code>build.xml</code> that is used to build the sources.</li>-->
<li>(オプション)「ライブラリの格納用に専用フォルダを使用」チェックボックスを選択し、ライブラリ・フォルダの場所を指定します。このオプションの詳細は、<a href="#projects-shared-libraries">NetBeans IDEでのプロジェクト・ライブラリの共有</a>を参照してください。</li>
<li>(オプション)「メイン・プロジェクトとして設定」チェックボックスを選択します。このオプションを選択すると、メイン・プロジェクトを消去してビルド([Shift]-[F11])などのコマンドのキーボード・ショートカットが、このプロジェクトに適用されます。</li>
<li>「次」をクリックして、ウィザードのサーバーと設定ページに進みます。</li>
<li>(オプション)プロジェクトを既存のエンタープライズ・アプリケーションに追加します。</li>
<li>デプロイ先のサーバーを選択します。目的のサーバーが表示されない場合は、「追加」をクリックしてそのサーバーをIDEに登録します。</li>
<li>ソース・レベルを、アプリケーションを実行するJavaのバージョンに設定します。</li>
<li>(オプション)コンテキスト・パスを調整します。デフォルトでは、コンテキスト・パスはプロジェクト名に基づいています。</li>
<li>「次」をクリックして、ウィザードの既存のソースとライブラリ・ページに進みます。</li>
<li>「Webページ・フォルダ」や「ソース・パッケージ・フォルダ」の値など、ページ上のすべてのフィールドを確認します。</li>
<li> 「終了」をクリックします。
</li>
</ol>
<a name="free-form"></a>
<h3 class="tutorial">自由形式プロジェクト</h3>
<p>自由形式プロジェクト用のプロジェクト・テンプレートもあります。自由形式プロジェクトの場合、IDEは既存のAntスクリプト内のターゲットを使用して、アプリケーションのビルド、実行、消去、テスト、およびデバッグを行います。いずれかの機能に対応するターゲットがAntスクリプトに含まれていない場合、それらの機能をプロジェクトで使用することはできません。それらの機能を実装するには、AntスクリプトまたはセカンダリAntスクリプト内にターゲットを記述します。 </p>
<p>一般に、プロジェクトのインポートには標準の「既存のソースを使用する」プロジェクト・テンプレートを使用することをお薦めします。Eclipseプロジェクトの場合は、標準のプロジェクトを作成および構成する、「プロジェクトをインポート」機能を使用するのが最適です。標準のプロジェクトのほうが、長期的に見れば管理が容易です。ただし、標準のプロジェクト内では複製できない、複雑または特有な構成を持つAntベースの既存のプロジェクトがある場合は、自由形式プロジェクトのテンプレートが便利です。たとえば、クラスパスがそれぞれ異なる複数のソース・ルートを持つプロジェクトをインポートしており、それらのソース・ルートを別のプロジェクトに分割できないときには、自由形式プロジェクトのテンプレートを使用することが必要な場合があります。</p>
<p>このガイドでは、標準のプロジェクトに重点を置いています。自由形式プロジェクトの設定の詳細は、<a href="../../articles/freeform-config.html">自由形式プロジェクトの詳細構成</a>を参照してください。
</p>
</div>
<a name="projects-configuring"></a><h2>クラスパスおよびその他のプロジェクト設定の構成</h2>
<p>この項では、プロジェクトのターゲットJDKの設定、クラスパスの設定、プロジェクト間の依存性の作成、プロジェクトとユーザーとの間のライブラリの共有など、プロジェクト設定の最も一般的なタスクについて説明します。</p>
<div class="indent">
<a name="projects-main"></a><h3 class="tutorial">メイン・プロジェクトの設定</h3>
<p>多数のソース・フォルダで構成される大規模なアプリケーションを開発する際には、コードを分割して独立した複数のプロジェクトにまとめることがあります。通常、これらのプロジェクトの1つは、アプリケーションのエントリ・ポイントとして機能します。アプリケーションへのメインのエントリ・ポイントとなるプロジェクトをIDEに対して指定するには、そのプロジェクトをメイン・プロジェクトとして設定します。メイン・プロジェクトに関するコマンドはIDEで提供されています。たとえば、メイン・プロジェクトを消去してビルド・コマンドを実行すると、メイン・プロジェクトと、その必須プロジェクトのすべてがビルドされます。 </p>
<p><b>プロジェクトをメイン・プロジェクトに設定するには:</b></p>
<ul>
<li>「プロジェクト」ウィンドウで「プロジェクト」ノードを選択し、メイン・メニューから「実行」>「メイン・プロジェクトとして設定」>「<i>project name</i>」を選択します。 </li>
</ul>
<p>メイン・プロジェクトに指定できるプロジェクトは、一度に1つのみです。</p>
<a name="projects-jdk"></a>
<h3 class="tutorial">プロジェクトにおけるターゲットJDKの設定</h3>
<p>IDEでは、複数のJavaプラットフォームを登録でき、各プラットフォームに対してJavadocやソース・コードを添付できます。標準プロジェクト用のターゲットJDKを切り換えると、処理は次のように変更されます。</p>
<ul>
<li>コード補完の実行時には、新規JDKのクラスが優先して使用されます。</li>
<li>ターゲットのJDKのソース・コードとJavadocドキュメントがある場合は、それらが表示されます。</li>
<li>アプリケーションのコンパイルおよび実行に、ターゲットJDKの実行可能ファイル(<code>javac</code>および<code>java</code>)が使用されます。</li>
<li>ターゲットJDKのライブラリを使用してソース・コードをコンパイルします。</li>
</ul>
<p>デフォルトでは、IDEは、IDEプロジェクト用のデフォルトのJavaプラットフォームとしてIDEそのものの実行に使用されているJava SEプラットフォーム(JDK)のバージョンを使用します。「<tt>ヘルプ</tt>」>「<tt>バージョン情報</tt>」(OS Xの場合は「<tt>NetBeans</tt>」>「<tt>Nebeansのバージョン情報</tt>」)を選択することによって、IDEのJDKバージョンを表示できます。「Java」フィールドにJDKのバージョンが表示されます。</p>
<p><b>別のバージョンのJDKでIDEを実行するには:</b></p>
<ul>
<li>次のスイッチを使用して、コマンド行からIDEを起動します。
<pre>--jdkhome jdk-home-dir</pre>
<p>または、IDEのインストール・フォルダ内にある<code>/etc/netbeans.conf</code>ファイルでJDKを設定します。 </p>
</li>
</ul>
<p><b>新規Javaプラットフォームを登録するには:</b></p>
<ol>
<li>メイン・メニューから「<tt>ツール</tt>」>「<tt>Javaプラットフォーム</tt>」を選択します。
<p class="align-center"><a href="../../../images_www/articles/74/java/project-setup/setup-platformmgr.png" rel="lytebox" title="Javaプラットフォーム・マネージャ"> <img alt="Javaプラットフォーム・マネージャ" border="1" src="../../../images_www/articles/74/java/project-setup/setup-platformmgr-small.png"></a></p></li>
<li>「プラットフォームの追加」をクリックします。</li>
<li>「Javaプラットフォームの追加」ダイアログ・ボックスで「Java Standard Edition」を選択し、「次」をクリックします。</li>
<li>Javaプラットフォームが含まれているフォルダと、デバッグに必要なソースおよびJavadocを指定します。「次」をクリックします。</li>
<li>プラットフォームの表示名およびJavaプラットフォームとJavadocのソースの場所を指定します。「終了」をクリックします。</li>
</ol>
<p><b>標準プロジェクトのターゲットJDKを切り替えるには:</b></p>
<ol>
<li>プロジェクト・ノードを右クリックし、「プロパティ」を選択します。</li>
<li>「ライブラリ」パネルを選択します。</li>
<li>Javaプラットフォーム・プロパティを変更します。</li>
</ol>
<a name="projects-classpath"></a><h3 class="tutorial">プロジェクトのクラスパスの管理</h3>
<p>
プロジェクトのクラスパスにクラス・ファイルのグループを追加すると、コンパイルおよび実行中にプロジェクトがアクセスする必要があるクラスをIDEに指示できます。また、IDEはクラスパス設定を使用して、コード補完、コンパイル・エラーの自動強調表示、およびリファクタリングを有効にします。既存のプロジェクトのクラスパス宣言は、「プロジェクト・プロパティ」ダイアログ・ボックスで編集できます。</p>
<p>
標準のJavaプロジェクトでは、IDEが、プロジェクトのコンパイルと実行用のクラスパスと、Java SEアプリケーションの場合のJUnitテストのコンパイルと実行用のクラスパスを、個別に維持します。IDEでは、プロジェクトのコンパイル・クラスパスのすべてがプロジェクトの実行時クラスパスに自動的に追加されます。
</p>
<p><b>プロジェクトのクラスパスは、次のいずれかの方法で変更できます。</b></p>
<ul>
<li>プロジェクトのノードを右クリックして「プロパティ」を選択し、「ライブラリ」カテゴリを選択して、表示されているクラスパス・エントリを変更します。</li>
<li>「プロジェクト」ウィンドウで「ライブラリ」ノードを右クリックし、「プロジェクトの追加」、「ライブラリの追加」または「JAR/フォルダの追加」を選択します。</li>
</ul>
<p>
ライブラリ・マネージャでJavadocおよびソース・ファイルをJARファイルに添付した場合、プロジェクトのクラスパスにJARファイルを登録すると、IDEではJavadocおよびソース・ファイルがプロジェクトに自動的に追加されます。この構成のみで、クラスを表示してそのクラスのJavadocページを参照することもできます。</p>
<p class="align-center"><a href="../../../images_www/articles/74/java/project-setup/projprops-libcompile.png" rel="lytebox" title="「プロジェクト・プロパティ」ダイアログ・ボックス"> <img alt="「プロジェクト・プロパティ」ダイアログ・ボックス" border="1" src="../../../images_www/articles/74/java/project-setup/projprops-libcompile-small.png"></a></p>
<a name="projects-dependencies"></a>
<h3 class="tutorial">プロジェクト間の依存性の管理</h3>
<p>
アプリケーションが複数のプロジェクトで構成されている場合は、プロジェクト間のクラスパス依存性を設定する必要があります。通常は、プロジェクトのメイン・クラスを含む1つのメイン・プロジェクトをJava SEプロジェクトに設定し、さらにいくつかの必須プロジェクトを設定します。必須プロジェクトとは、別のプロジェクトのクラスパスに追加されているプロジェクトです。プロジェクトを消去してビルドすると、IDEではその必須プロジェクトも消去してビルドされます。必須プロジェクトのJavadocとソースは、受け側のプロジェクトからも利用できるようになります。 </p>
<p>
必須プロジェクトは、「プロジェクト」ウィンドウで「ライブラリ」ノードを右クリックするか、「プロジェクト・プロパティ」ダイアログ・ボックスの「ライブラリ」タブで指定することによって、プロジェクトに追加できます。必須プロジェクトを追加するときは、クラスパスに追加するJARファイルを含むプロジェクト・フォルダを選択します(ファイル・チューザには、IDEプロジェクト・フォルダのアイコン(<img ALIGN="bottom" alt="プロジェクト・フォルダ・アイコン" src="../../../images_www/articles/72/java/project-setup/projectfolder.png">)が表示されます)。「プロジェクト・プロパティ」ダイアログ・ボックスでプロジェクトを追加するときは、「クラスパス上のプロジェクトをビルド」チェックボックスが選択されていることを確認します。</p>
<p>
自由形式プロジェクトを標準プロジェクトのクラスパスに追加する場合は、自由形式プロジェクトのJARファイルを標準プロジェクトのクラスパスに追加する必要があります。これを行うには、まず自由形式プロジェクトのすべての出力ファイルを、自由形式プロジェクトの「プロジェクト・プロパティ」ダイアログ・ボックスの「出力」パネルで宣言する必要があります。</p>
<a name="projects-shared-libraries"></a><h3 class="tutorial">プロジェクト・ライブラリの共有</h3>
<p>NetBeans IDEのプロジェクト・システムはAntベースのため、NetBeansプロジェクトはIDEを使用しているかどうかにかかわらず、異なるユーザー間ですでに一般的に移植できます。ただし、デフォルトでは、プロジェクトのビルド・スクリプトがライブラリを参照する方法は、特に「ライブラリ・マネージャ」ダイアログ・ボックスで定義されたライブラリの場合、各ユーザーに固有の要素に依存します。</p>
<p>たとえば、通常は、プロジェクトをzipファイルにして別のユーザーに渡し、そのユーザーがプロジェクトを展開して実行できます。しかし、「ライブラリ・マネージャ」ダイアログ・ボックスで指定したカスタム・ライブラリにプロジェクトが依存する場合は、カスタム・ライブラリへの参照が未解決のため、他のユーザーがプロジェクトをビルドする際、最初に問題が発生する可能性があります。</p>
<p>その他に不都合を引き起こす可能性があるのは、どこが元になっているかによって、そのライブラリが様々な場所に保存されていることです。IDEに付属するライブラリはIDEのインストール場所内の様々なフォルダに保存されています。これらの例には、Swingレイアウト拡張、Beans Binding、およびデータベース・ドライバが含まれます。</p>
<p>これらの問題を解決するには、プロジェクト・ライブラリ用に専用フォルダを指定します。また、これらのライブラリを参照する場合に相対パスを使用するか絶対パスを使用するかを管理できます。 </p>
<p>この柔軟性によって、次のような状況を簡単に処理できます。</p>
<ul>
<li>プロジェクトを作成して、そのプロジェクトを他のユーザーが使用したりビルドできるようにする場合(他のユーザーがIDEを使用しているかどうかに関係なく)。他のユーザーは、バージョン管理のチェックアウト、または提供されるzipファイルの展開によって、プロジェクトにアクセスできる必要があります。また、追加の構成を行わずにアプリケーションをビルドできる必要があります。</li>
<li>既存のプロジェクトで作業を開始し、プロジェクト・ライブラリの保存場所(およびビルド・スクリプトがライブラリを相対パスで参照するか、絶対パスで参照するか)について厳しい規則に従う必要がある場合。 </li>
</ul>
<p>標準のJava SEプロジェクト、Webプロジェクト、およびエンタープライズ・プロジェクト用に、専用のライブラリ・フォルダを設定できます。新規プロジェクト・ウィザードでプロジェクトを作成したとき、またはその後「プロジェクト・プロパティ」ダイアログ・ボックスの「ライブラリ」タブで、ライブラリ・フォルダを設定できます。</p>
<!--TODO: info on descriptor/definition file-->
<p><b>プロジェクトの作成時に一般的なJavaプロジェクトのライブラリを共有可能にする</b></p>
<ol>
<li><tt>ファイル</tt>」>「<tt>新規プロジェクト</tt>」を選択します。</li>
<li>ウィザードの「Java」カテゴリで、標準テンプレートを1つ選択します。「次」をクリックします。</li>
<li>ウィザードの名前と場所ページで、「ライブラリの共有用に専用フォルダを使用」チェックボックスを選択します。</li>
<li>「ライブラリ・フォルダ」フィールドで、ライブラリを格納する場所を選択します。
<p>ライブラリがすでにIDEに含まれる場合、これらのライブラリは指定したフォルダにコピーされます。</p>
<!-- TODO : what about other types of libraries? --></li>
</ol>
<p><b>プロジェクト作成時にWebプロジェクトまたはJava EEプロジェクトのライブラリを共有可能にする</b></p>
<ol>
<li><tt>ファイル</tt>」>「<tt>新規プロジェクト</tt>」を選択します。</li>
<li>ウィザードの「Web」カテゴリで、標準テンプレートを1つ選択します。「次」をクリックします。</li>
<li>ウィザードの名前と場所ページで、「ライブラリの共有用に専用フォルダを使用」チェックボックスを選択します。</li>
<li>「ライブラリ・フォルダ」フィールドで、ライブラリを格納する場所を選択します。
<p>ライブラリがすでにIDEに含まれる場合、これらのライブラリは指定したフォルダにコピーされます。</p></li>
</ol>
<p><b>既存のプロジェクトのライブラリを共有可能にする</b></p>
<ol>
<li>プロジェクト・ノードを右クリックし、「プロパティ」を選択します。</li>
<li>「プロジェクト・プロパティ」ダイアログ・ボックスで「ライブラリ」ノードを選択します。</li>
<li>「ライブラリ」パネルで「参照」をクリックして、新規ライブラリ・フォルダ・ウィザードを開きます。</li>
<li>ウィザードのライブラリ・フォルダ・ページでライブラリの場所を入力し、「次」をクリックします。<br>場所は、相対パスまたは絶対パスとして入力できます。 </li>
<li>ウィザードの「アクション」パネルで、リストされた各ライブラリに選択されているアクションを確認します。ほとんどの場合、各ライブラリに最適なアクションがIDEによって検出されます。
<p>次のアクションがあります。</p>
<ul>
<li><b>ライブラリJARファイルを新規ライブラリ・フォルダにコピー。</b>このオプションは、選択したフォルダ内にライブラリがなく、ライブラリJARファイルをここに配置する場合に使用します。 </li>
<li><b>ライブラリJARファイルの相対パスを使用。</b>このオプションは、ライブラリがライブラリ・フォルダ内になく、相対パスを使用して既存の場所にあるライブラリにアクセスする場合に使用します。ライブラリ・フォルダの<tt>nblibraries.properties</tt>ファイルに、ライブラリへの相対参照のエントリが追加されます。</li>
<li><b>ライブラリJARファイルの絶対パスを使用。</b>このオプションは、ライブラリがライブラリ・フォルダ内になく、絶対パスを使用して既存の場所にあるライブラリにアクセスする場合に使用します。ライブラリ・フォルダの<tt>nblibraries.properties</tt>ファイルに、ライブラリへの絶対参照のエントリが追加されます。</li>
<li><b>ライブラリ・フォルダ内の既存のライブラリを使用。</b>このオプションは、ライブラリ・フォルダにライブラリのコピーがすでに存在し、ライブラリのそのコピーを使用する場合に使用します。</li>
</ul></li>
<li>「終了」をクリックして、プロジェクトを共有可能にするウィザードを終了します。</li>
<li>「OK」をクリックして、「プロジェクト・プロパティ」ダイアログ・ボックスを終了します。</li>
</ol>
<p><b class="notes">注意:</b> 「プロジェクト・プロパティ」ダイアログ・ボックスの「ライブラリ」ノードを使用して、ライブラリ・フォルダの場所を変更することもできます。ライブラリ・フォルダをすでに指定してある場合は、「参照」をクリックしたときに新規ライブラリ・フォルダ・ウィザードではなくファイル・チューザが表示されます。
</p>
<h3><a name="projects-jdk-javadoc"></a>IDEで使用可能なJavadocの作成
</h3>
<p>NetBeans IDEでJava SE APIのドキュメントを表示するには、「<tt>ソース</tt>」>「<tt>ドキュメントを表示</tt>」コマンドを使用するか、またはメイン・メニューから「<tt>ウィンドウ</tt>」>「<tt>その他</tt>」>「<tt>Javadoc</tt>」を選択して、別のウィンドウでAPIのドキュメントを表示します。</p>
<p>ただし、いくつかの他社製のライブラリには、APIドキュメントを使用できません。その場合、Javadocリソースを手動でIDEに関連付ける必要があります。</p>
<p><b>Javadocを表示コマンドで使用可能なJavadoc APIドキュメントを作成する</b></p>
<ol>
<li>Javadoc APIドキュメントのソースをダウンロードします。</li>
<li><tt>ツール</tt>」>「<tt>ライブラリ</tt>」を選択します。</li>
<li>ライブラリ・リストで、プロジェクトが使用しているライブラリを選択します。</li>
<li>「Javadoc」タブをクリックします。</li>
<li>「ZIP/フォルダを追加」ボタンをクリックし、システム上のJavadoc APIドキュメントを含むZIPファイルまたはフォルダに移動します。ZIPファイルまたはフォルダを選択し、「ZIP/フォルダを追加」ボタンをクリックします。</li>
<li>「OK」をクリックします。</li>
</ol>
<h3 class="tutorial"><a name="projectsjws"></a>アプリケーションのJava Web Startの有効化 </h3>
<p>IDEでJava Web Startをステップ実行するように、アプリケーションを構成できます。これを行うには、「プロジェクト・プロパティ」ウィンドウの「Java Web Start」カテゴリを使用します。Java Web Startを有効化する方法の詳細は、<a href="../../73/java/javase-jws_ja.html">NetBeans IDEでのJava Web Startの有効化</a>のチュートリアルを参照してください。</p>
<p><b>アプリケーションのJava Web Startを構成するには:</b></p>
<ol>
<li>プロジェクト・ノードを右クリックし、「プロパティ」を選択します。</li>
<li>「プロジェクト・プロパティ」ダイアログ・ボックスで、「<tt>アプリケーション</tt>」>「<tt>Web Start</tt>」ノードを選択します。</li>
<li>「Web Startを有効化」チェックボックスを選択し、<a href="../../73/java/javase-jws_ja.html">NetBeans IDEでのJava Web Startの有効化</a>の説明に従ってJava Web Start設定を構成します。</li>
</ol>
</div>
<a name="building"></a><h2>アプリケーションのビルド</h2>
<p>
この項では、IDEでの標準プロジェクトのビルド方法、ビルド・プロセスの基本的なカスタマイズ方法、およびコンパイル・エラーの処理方法について説明します。 </p>
<div class="indent">
<a name="building-commands"></a><h3 class="tutorial">プロジェクト、パッケージ、およびファイルのビルド</h3>
<p>IDEでのコンパイルは単純です。プロジェクトのコンパイル時クラスパスが正しく設定されている場合は、コンパイルするプロジェクト、パッケージ、またはファイルを選択し、「実行」メニューから適切なビルド・コマンドまたはコンパイル・コマンドを選択するのみです。これにより、IDEでファイルがコンパイルされます。</p>
<p>Javaプロジェクト用に「保存時にコンパイル」機能が有効化されている場合や、Java Webプロジェクトやエンタープライズ・プロジェクト用に「保存時にデプロイ」機能が有効化されている場合は、IDEによって保存時にファイルが自動的にコンパイルされます。詳細は、後述する<a href="#building-compile-on-save">保存時にコンパイル</a>を参照してください。</p>
<p><b>デプロイメント用にアプリケーションをビルドするには:</b></p>
<ul>
<li><tt>実行</tt>」>「<tt>プロジェクトを消去してビルド</tt>」を選択します。
<p>以前にコンパイルされたファイルや、JARファイルなどの配布可能な出力がすべて削除されます。次に、ファイルが再コンパイルされ、新しい出力が生成されます。コンパイルされたクラスを保持するための<code>build</code>フォルダが作成されます。JARファイルやJavadocドキュメントなどの配布可能な出力を格納するための<code>dist</code>が生成されます。「ファイル」ウィンドウを開いて、ビルド出力を確認できます。</p></li>
</ul>
<p>コンパイル・コマンドを呼び出すたびに、後述する<a href="#building-fixing">コンパイル・エラーの修正</a>で説明するように、発生したコンパイル・エラーを含む出力が「出力」ウィンドウに表示されます。</p>
<a name="building-compile-on-save"></a><h3 class="tutorial">保存時にコンパイル</h3>
<p>IDEの「保存時にコンパイル」機能を使用すると、IDEでプロジェクトを実行およびデバッグする際の時間が短縮されます。プロジェクト用に「保存時にコンパイル」機能が有効化されている場合は、ファイルの保存時にそれらのファイルがコンパイルされます。コンパイルされたファイルは、IDEでプロジェクトを実行、テスト、デバッグ、およびプロファイルするときに使用されるキャッシュに格納されます。このため、アプリケーションのテストおよびデバッグを行うとき、最初にアプリケーションがビルドされるまで待つ必要がありません。</p>
<p>「保存時にコンパイル」機能を有効にすると、次のような効果があります。</p>
<ul>
<li>IDEでは保存時にファイルがコンパイルされるため、プロジェクトは常にIDEで実行可能またはデバッグ可能な状態になります。</li>
<li>ビルド・コマンドが無効になります。「消去してビルド」コマンドを使用せずにJARファイルを再ビルドする場合は、「保存時にコンパイル」機能を無効にする必要があります。</li>
<li>実行、デバッグ、プロファイル、またはテストのコマンドを使用する際に、プロジェクトのAntスクリプトは使用されません。これらのいずれかのコマンド用にビルド・スクリプトをカスタマイズした場合、そのカスタマイズ内容は無視されます。</li>
<li>ファイルに加えた変更を保存するときに、プロジェクトからビルドされたJARファイルは最新の状態に変更されません<i></i>。JARファイルをビルドまたは再ビルドするには、「消去してビルド」コマンドを使用する必要があります。「保存時にコンパイル」が有効になっているかどうかに関係なく、「消去してビルド」コマンドでは、常にプロジェクトのAntスクリプトが使用されます。</li>
</ul>
<p>デフォルトでは、プロジェクトを新たに作成する場合は「保存時にコンパイル」機能が有効化されます。既存のプロジェクトの場合は、「保存時にコンパイル」機能が無効になります。</p>
<p><b>Javaプロジェクトで「保存時にコンパイル」機能を有効または無効にするには:</b></p>
<ol>
<li>プロジェクト・ノードを右クリックし、「プロパティ」を選択します。</li>
<li>「プロジェクト・プロパティ」ダイアログ・ボックスで、「ビルド」カテゴリを展開し、「コンパイル・ノード」を選択します。</li>
<li>必要に応じて「保存時にコンパイル」プロパティを選択します。</li>
</ol>
<p>同様に、IDEには、Java Webアプリケーションおよびエンタープライズ・アプリケーション用に「保存時にデプロイ」機能も用意されています。プロジェクトで「保存時にデプロイ」機能が有効化されていて、そのプロジェクトがIDEを介してサーバーにデプロイされている場合、変更されたファイルはすぐにそのサーバーに再デプロイされます。「保存時にデプロイ」がGlassFish V4で機能するには、Glassfishインスタンスで、ディレクトリ・デプロイメント有効オプションが選択されている必要があります。 </p>
<p><b>Java Webまたはエンタープライズ・プロジェクトで「保存時にデプロイ」機能を有効または無効にするには:</b></p>
<ol>
<li>プロジェクト・ノードを右クリックし、「プロパティ」を選択します。</li>
<li>「実行」ノードを選択し、「保存時にデプロイ」プロパティを設定します。</li>
</ol>
<p><b>ディレクトリ・デプロイメントGlassfish V4を有効化するには:</b></p>
<ol>
<li><tt>ツール</tt>」>「<tt>サーバー</tt>」を選択します。</li>
<li>サーバーを選択します。</li>
<li>「オプション」タブを選択します。</li>
<li>ディレクトリ・デプロイメント有効オプションを選択します。</li>
</ol>
<a name="building-fixing"></a><h3 class="tutorial">コンパイル・エラーの修正</h3>
<!--TODO add info here about task list, etc.-->
<p>
IDEでは、出力メッセージとコンパイル・エラーが「出力」ウィンドウに表示されます。複数のタブを持つこのウィンドウは、コンパイル・エラーの生成時、プログラムのデバッグ時、Javadocドキュメントの生成時などに自動的に表示されます。また、このウィンドウは、「ウィンドウ」>「出力」(Windowsの場合は[Ctrl]-[4]、OS Xの場合は[Cmd]-[4])を選択して手動で開くことができます。</p>
<p>また、コンパイル・エラーは、「タスク」ウィンドウにも表示され、ソース・エディタでマークされます。</p>
<p>
「出力」ウィンドウの重要な機能の1つは、プログラムのコンパイル中に見つかったエラーを通知することです。次のイメージに示すように、エラー・メッセージは青い下線付きのテキストで表示され、ソース・コード内のエラーが発生した行にリンクされています。(一部のよくあるコードの誤りについては、ソース・エディタでヒント・アイコンの上にカーソルを置くと、エラーの修正方法のヒントが表示されます。)「出力」ウィンドウでは、Antビルド・スクリプトの実行時に検出されたエラーへのリンクも提供されます。「出力」ウィンドウでエラー・リンクをクリックすると、ソース・エディタは、そのエラーが含まれている行に自動的に移動します。</p>
<p class="align-center"><a href="../../../images_www/articles/74/java/project-setup/output-window.png" rel="lytebox" title="コンパイル・エラーが表示された「出力」ウィンドウ"> <img alt="コンパイル・エラーが表示された「出力」ウィンドウ" border="1" src="../../../images_www/articles/74/java/project-setup/output-window-small.png"></a></p>
<p>ファイルのコンパイルや実行、デバッグなどの、Antスクリプトが実行するすべてのアクションの出力は、同じ「出力」ウィンドウのタブに送信されます。「出力」ウィンドウに表示されたメッセージを保存する必要がある場合は、そのメッセージを別のファイルにコピーして貼り付けることができます。新しいターゲットそれぞれのコマンド出力を新しい「出力」ウィンドウ・タブに出力するようにAntを設定することもできます。これを行うには、「ツール」>「オプション」を選択し、「その他」カテゴリを選択し、「Ant」タブをクリックし、「終了したプロセスの出力タブを再利用」プロパティのチェックボックスを選択解除します。</p>
<a name="building-filtering"></a><h3 class="tutorial">出力ファイルのフィルタリング</h3>
<p>
JARファイルやWARファイルを作成するときには、通常、コンパイルされた<code>.class</code>ファイルと、リソース・バンドルやXMLドキュメントなど、ソース・ディレクトリに置かれているその他のリソース・ファイルのみを含めます。デフォルトのフィルタは、出力ファイルからすべての<code>.java</code>ファイル、<code>.nbattrs</code>ファイル、および<code>.form</code>ファイルを除外することで、自動的にこの処理を行います。</p>
<p>
正規表現を使用して追加のフィルタを作成し、出力ファイルを制御できます。除外するファイルを指定するには、「プロジェクト」ウィンドウでプロジェクトを右クリックし、「プロパティ」を選択して「プロジェクト・プロパティ」ダイアログ・ボックスを表示します。左側ペインで、「パッケージング」をクリックします。右ペインでテキスト・ボックスに正規表現を入力して、JARファイルまたはWARファイルのパッケージング時に除外するファイルを指定します。デフォルトの式に加えて、使用可能な正規表現がいくつかあります。</p>
<table>
<tr>
<th class="tblheader" scope="col">正規表現</th>
<th class="tblheader" scope="col">説明</th>
</tr>
<tr>
<td class="tbltd1"><code>\.html$ </code></td>
<td class="tbltd1">すべてのHTMLファイルを除外</td>
</tr>
<tr>
<td class="tbltd1"><code>\.java$ </code></td>
<td class="tbltd1">すべてのJavaファイルを除外</td>
</tr>
<tr>
<td class="tbltd1"><code>(\.html$)|(\.java$) </code></td>
<td class="tbltd1">すべてのHTMLファイルおよびJavaファイルを除外</td>
</tr>
<tr>
<td class="tbltd1"><code>(Key)|(\.gif$) </code></td>
<td class="tbltd1">すべてのGIFファイルと、名前に<code>Key</code>が含まれるすべてのファイルを除外</td>
</tr>
</table>
<p>
正規表現の構文については、<a href="http://jakarta.apache.org">jakarta.apache.org</a>を参照してください。</p>
</div>
<a name="deploy"></a><h2>アプリケーションの実行</h2>
<p>この項では、IDEでのプロジェクトの実行方法と、プロジェクトのメイン・クラス、実行時引数、VM引数、および作業ディレクトリの構成方法について説明します。</p>
<div class="indent">
<a name="deploy-projects"></a><h3 class="tutorial`">プロジェクトおよびファイルの実行</h3>
<p>Javaプロジェクトの場合は、通常、プログラムのメイン・クラスを含むプロジェクトをメイン・プロジェクトとして設定します。Webプロジェクトの場合、メイン・プロジェクトは最初にデプロイされたプロジェクトです。プロジェクト、パッケージ、またはファイルを実行するには、次のいずれかを選択します。</p>
<ul>
<li>メイン・メニューで、「<tt>実行</tt>」><tt>「メイン・プロジェクトの実行」([F6])</tt>を選択して、メイン・プロジェクトを実行します。また、ツールバーの「メイン・プロジェクトの実行」ボタンを使用することもできます。</li>
<li>「プロジェクト」ウィンドウで、プロジェクトを右クリックし、「実行」を選択してプロジェクトを実行します。Javaプロジェクトの場合は、プロジェクトにメイン・クラスが必要です。</li>
<li>「プロジェクト」ウィンドウでファイルを右クリックし、「ファイルを実行」([Shift]+[F6])を選択してファイルを実行します。または、メイン・メニューで「<tt>実行</tt>」>「<tt>ファイルを実行</tt>」><tt>「filenameを実行」([Shift]+[F6])</tt>を選択して、実行可能なクラスを実行します。 </li>
</ul>
<p>プロジェクトを実行すると、IDEでコンパイル・エラーと出力が「出力」ウィンドウに表示されます。詳細は、<a href="#building-fixing">コンパイル・エラーの修正</a>を参照してください。</p>
<p class="notes"><b>注意:</b> プロジェクトで「保存時にコンパイル」が有効化されている場合、「プロジェクトの実行」コマンドは、これらのファイルを保存したときに作成されたクラス・ファイルに対して作用します。Antビルド・スクリプトは使用されません。ビルド・スクリプトでカスタム手順を定義した場合、それらの手順には従いません。「プロジェクトの実行」、「プロジェクトをデバッグ」、または「プロジェクトをプロファイル」を使用するときに、すべてのビルド・プロセスを実行するには、「<a href="#building-compile-on-save">保存時にコンパイル</a>」を無効にします。
</p>
<a name="deploy-options"></a><h3 class="tutorial">実行時オプションのカスタマイズ</h3>
<p>デフォルトでは、IDEでメイン・クラス、実行時引数、またはJVM引数は指定されません。各標準プロジェクトの実行時クラスパスには、プロジェクトのコンパイル済クラスと、プロジェクトのコンパイル時クラスパスにあるすべての生成物が含まれます。プロジェクトのコンパイル時クラスパスを表示するには、「プロジェクト・プロパティ」ダイアログ・ボックスを表示し、「カテゴリ」ペインで「ライブラリ」ノードを選択してから、右ペインで「コンパイル」タブをクリックします。</p>
<p>プロジェクト実行時オプションを変更するには、「プロジェクト」ウィンドウでプロジェクトのノードを右クリックして「プロパティ」を選択し、「プロジェクト・プロパティ」ダイアログ・ボックスを表示します。次に、「カテゴリ」ペインで「ライブラリ」ノードを選択し、ダイアログ・ボックスの右ペインで「実行」タブをクリックします。メイン・クラスの設定、プログラム引数、プログラム実行用の作業ディレクトリ、およびVMオプションにアクセスするには、「実行」ノードを選択する必要があります。次の項では、実行時クラスパスの構成方法について詳しく見て行きます。</p>
<p class="align-center"><a href="../../../images_www/articles/74/java/project-setup/proj_props-libraries.png" rel="lytebox" title="「プロジェクト・プロパティ」ダイアログ・ボックスでの実行時設定の指定"><img alt="「プロジェクト・プロパティ」ダイアログ・ボックスでの実行時設定の指定" border="1" src="../../../images_www/articles/74/java/project-setup/proj_props-libraries-small.png"></a></p>
<!-- TODO Run configurations-->
<a name="deploy-classpath"></a><h3 class="tutorial">実行時クラスパスの設定</h3>
<p>プロジェクト、ライブラリ、JARファイル、およびフォルダをプロジェクトの実行時クラスパスに追加するには、「プロジェクト・プロパティ」ダイアログ・ボックス内の「実行時ライブラリ」リストの右側にあるボタンを使用します。</p>
<p>プロジェクトが、間接インタフェースまたはリフレクションを使用して、実行時に動的に特殊なライブラリ(JDBCドライバあるいはJAXP実装など)を使用する場合は、それらのライブラリを実行時クラスパスに追加してください。また、プロジェクト間の実行時の依存性が、コンパイル時の依存性と異なる場合も、実行時クラスパスを調整する必要があります。たとえば、プロジェクトAがプロジェクトBに対してコンパイルされ、プロジェクトBがプロジェクトCに対してコンパイルされるが、プロジェクトAはプロジェクトCに対してコンパイルされないとします。このことは、プロジェクトAの実行時クラスパスには、プロジェクトBのみ存在することを意味します。実行中のプロジェクトAがプロジェクトBとCの両方を必要とする場合は、プロジェクトAの実行時クラスパスにプロジェクトCを追加する必要があります。</p>
<a name="deploy-args"></a><h3 class="tutorial">メイン・クラスと実行時引数の設定</h3>
<p>プロジェクトのメイン・クラスを設定するには、「プロジェクト・プロパティ」ダイアログ・ボックスの「カテゴリ」ペインで「実行」ノードを選択し、完全修飾名を「メイン・クラス」フィールドに入力します(例: <code>org.myCompany.myLib.MyLibClass</code>)。メイン・クラスは、プロジェクト内か、プロジェクトの実行時クラスパスにあるJARファイルまたはライブラリのいずれかに存在する必要があります。その後、必要な実行時引数を「引数」フィールドに入力します。</p>
<p>「参照」ボタンを使用してプロジェクトのメイン・クラスを選択すると、ファイル・チューザにプロジェクトのソース・ディレクトリ内のクラスのみ表示されます。クラスパス上にあるライブラリにあるクラスを指定する場合は、「メイン・クラス」フィールドにそのクラスの完全修飾名を入力する必要があります。</p>
<a name="deploy-jvm"></a><h3 class="tutorial">JVM引数の設定</h3>
<p>プロジェクトのJVM引数は、「プロジェクト・プロパティ」ダイアログ・ボックスで指定できます。「プロジェクト・プロパティ」ダイアログ・ボックスを表示し、「カテゴリ」ペインで「実行」をクリックしてから、「VMオプション」フィールドにスペースで区切られたJVM引数のリストを入力します。</p>
<p>「VMオプション」フィールドで次を入力することによって、システム・プロパティを設定することができます。</p>
<pre class="examplecode">-Dname=value</pre>
</div>
<a name="build-script"></a><h2>ビルド・スクリプトのカスタマイズ</h2>
<p>標準プロジェクトでは、IDEにより、新規プロジェクト・ウィザードおよびプロジェクトの「プロジェクト・プロパティ」ダイアログ・ボックスに入力したオプションに基づいて、ビルド・スクリプトが生成されます。基本的なコンパイル・オプションと実行時オプションはすべてプロジェクトの「プロジェクト・プロパティ」ダイアログ・ボックスに設定可能で、IDEによってプロジェクトのAntスクリプトが自動的に更新されます。ビルド・プロセスの追加要件に、「プロジェクト・プロパティ」ダイアログ・ボックスでは処理できないものがある場合は、ビルド・スクリプトを直接変更できます。</p>
<p>標準プロジェクトのメインのAntスクリプトは、<code>build.xml</code>です。IDEコマンドを実行すると、IDEによって<code>build.xml</code>内のターゲットがコールされます。このファイルには、IDEによって生成されたビルド・ターゲットを含む<code>nbproject/build-impl.xml</code>をインポートする、インポート文が含まれています。<code>build.xml</code>では、<code>nbproject/build-impl.xml</code>からのターゲットをオーバーライドしたり、新しいターゲットを作成したりできます。<code>nbproject/build-impl.xml</code>ファイルは「プロジェクト・プロパティ」ダイアログ・ボックスで加えた変更に基づいて再生成されるため、直接編集<i>しないでください</i></p>
<p>また、ビルド・スクリプトでは、手動で編集できる<code>nbproject/project.properties</code>が使用されます。</p>
<p>標準プロジェクトの場合は、次のいずれかを実行してビルド・プロセスをカスタマイズできます。</p>
<ul>
<li>クラスパス設定やJARフィルタなどの基本的なオプションを、プロジェクトを作成するときに新規プロジェクト・ウィザードで、または後で「プロジェクト・プロパティ」ダイアログ・ボックスに入力します。</li>
<li><code>nbproject/project.properties</code>内のプロパティを編集します。このファイルには、ソース・フォルダや出力フォルダの場所などの、プロジェクトに関する重要な情報とともにAntプロパティが格納されます。このファイルのプロパティはオーバーライドできます。このファイルを編集するときには注意してください。たとえば、プロジェクトを消去すると、出力フォルダも削除されます。したがって、出力フォルダとソース・フォルダを同じディレクトリに保存する場合は、最初に必ずcleanターゲットを構成して出力フォルダを削除しないようにしてください。</li>
<li>既存のAntターゲットをカスタマイズするか、または新しいAntターゲットを作成するには、次のいずれかを実行します。<ul>
<li>Antターゲットの実行前または実行後に処理される命令を追加します。<code>nbproject/build-impl.xml</code>内の各メイン・ターゲットには、<code>build.xml</code>でオーバーライドできる<code>-pre</code>および<code>-post</code>ターゲットもあります。たとえば、RMIを通常のプロジェクトで動作させるには、<code>build.xml</code>に次の内容を入力します。
<pre class="examplecode">&lt;target name=&quot;-post-compile&quot;&gt;
&lt;rmic base=&quot;${build.classes.dir}&quot; includes=&quot;**/Remote*.class&quot;/&gt;
&lt;/target&gt;</pre></li>
<li>Antターゲットで命令を変更します。<code>nbproject/build-impl.xml</code>から<code>build.xml</code>にターゲットをコピーし、ターゲットに変更を加えます。</li>
<li><code>build.xml</code>に新しいターゲットを作成します。新しいターゲットをIDEの既存のターゲットの依存性に追加することもできます。<code>build.xml</code>で既存のターゲットをオーバーライドしてから、既存のターゲットの<code>depends</code>プロパティに新しいターゲットを追加します。たとえば、runターゲットの依存性に<code>new-target</code>ターゲットを追加するには、次のように指定します。
<pre class="examplecode">&lt;target name=&quot;new-target&quot;&gt;
&lt;!-- target body... --&gt;
&lt;/new-target&gt;
&nbsp;
&lt;target name=&quot;run&quot; depends=&quot;new-target,myprojname-impl.run&quot;/&gt;</pre>
<p><code>build.xml</code>にrunターゲットの本体をコピーする必要はありません。</p>
</li></ul></li></ul>
<p>次の表は、JARファイルを再定義するのに役立つ、いくつかの一般的なタスクをまとめたものです。</p>
<table>
<tr>
<th class="tblheader" scope="col">行う作業</th>
<th class="tblheader" scope="col">手順</th>
</tr>
<tr>
<td class="tbltd1">JARファイルに追加するファイルを指定する。</td>
<td class="tbltd1">「プロジェクト」ウィンドウでプロジェクトのノードを右クリックし、「プロパティ」を選択します。「ビルド」の下の「パッケージング」サブノードをクリックし、「JARファイルから除外」フィールドを使用して、フィルタ設定と圧縮設定を構成します。詳細は、<a href="#building-filtering">出力ファイルのフィルタリング</a>を参照してください。</td>
</tr>
<tr>
<td class="tbltd1">JARファイルの名前と場所を変更する。 </td>
<td class="tbltd1">「ファイル」ウィンドウでプロジェクトの<code>nbproject/project.properties</code>ファイルをダブルクリックして、このファイルをソース・エディタで開きます。<code>dist.jar</code>プロパティにJARファイルのフル・パスを入力します。
</td>
</tr>
<tr>
<td class="tbltd1">JARファイルのマニフェスト・ファイルを指定する。 </td>
<td class="tbltd1"><code>project.properties</code>内の<code>manifest.file</code>プロパティにマニフェスト・ファイルの名前を入力します。このファイル名は、プロジェクトの<code>build.xml</code>ファイルを基準にした相対パスで指定する必要があります。Javaアプリケーション・テンプレートを使用している場合は、IDEによってマニフェスト・ファイルが自動的に作成されます。
</td>
</tr>
<tr>
<td class="tbltd1">プロジェクトのJARファイルの生成を無効にする。 </td>
<td class="tbltd1">「ファイル」ウィンドウでプロジェクト・フォルダを開き、<code>build.xml</code>を開きます。<code>jar</code>ターゲットをオーバーライドし、コンテンツなし、依存性なしに設定します。たとえば<code>build.xml</code>に次の行を追加します。
<pre>&lt;target name=&quot;jar&quot; /&gt;</pre>
</td>
</tr>
</table>
<p>Antに関する学習リソースについては、<a href="http://ant.apache.org/resources.html">http://ant.apache.org/resources.html</a>を参照してください。プラグイン・マネージャを使用して、AntのマニュアルをIDEのヘルプ・システムにインストールすることもできます。「ツール」>「プラグイン」を選択し、Ant Documentationモジュールをインストールします。 </p>
<div class="indent">
<a name="ant-editing"></a><h3 class="tutorial">Antスクリプトの編集および実行</h3>
<p>IDEはAntスクリプトを自動的に認識し、それらのスクリプトを、通常のXMLファイルではなくAntスクリプト・ノード(<img align="bottom" alt="Antスプリクト・ノード・アイコン" src="../../../images_www/articles/72/java/project-setup/anticon.png">)として表示します。「プロジェクト」ウィンドウ、「ファイル」ウィンドウ、または「お気に入り」ウィンドウでAntスクリプトを右クリックして、コマンドのポップアップ・メニューにアクセスできます。また、Antスクリプト・ノードを展開して、Antスクリプトのターゲットを表すサブノードのアルファベット順のリストを表示することもできます。これらのサブノードのそれぞれには、コマンドのポップアップ・メニューもあります。</p>
<p>「プロジェクト」ウィンドウ、「ファイル」ウィンドウ、および「お気に入り」ウィンドウでは、Antスクリプトのサブノードが次のように表示されます。</p>
<table>
<tr>
<th class="tblheader" scope="col">アイコン</th>
<th class="tblheader" scope="col">意味</th>
</tr>
<tr>
<td class="tbltd1">
<img align="bottom" alt="強調されたAntターゲット・アイコン" src="../../../images_www/articles/72/java/project-setup/setup-targeticon-emph.png">
</td>
<td class="tbltd1">
<p><b>強調されたAntターゲット。</b>これらのターゲットには、ツールチップとして表示される説明属性が含まれています。ターゲットの説明属性は、ソース・エディタで定義します。</p>
</td>
</tr>
<tr>
<td class="tbltd1">
<img alt="通常のAntターゲット・アイコン" src="../../../images_www/articles/72/java/project-setup/setup-targeticon.png">
</td>
<td class="tbltd1">
<b>通常のAntターゲット。</b>説明属性を持たないターゲットです。
</td>
</tr>
</table>
<p>Antスクリプトのサブノードをダブルクリックすることにより、ソース・エディタ内のそのターゲットの場所まで移動できます。すべての通常のXML検索ツール、選択ツール、およびキーボード・ショートカットを使用してAntスクリプトを編集でき、IDEでは、すべての標準的Antタスクについてコード補完機能が動作します。</p>
<p>
コマンド行から実行するターゲットを作成するときには、そのターゲットに説明属性を設定してください。ターゲットの名前や機能を忘れた場合は、ant<code>-projecthelp &lt;script></code>コマンドをコマンド行から実行できます。このコマンドを実行すると、Antは、説明属性を持つターゲットのみを、それらの説明とともにリストします。特に、Antビルド・スクリプト内に多数のターゲットがある場合、一部のターゲットを強調し、その他のターゲットは強調しないことによって、頻繁に使用するターゲットとそうでないターゲットを簡単に区別できます。</p>
<p>「プロジェクト」、「ファイル」、および「お気に入り」の各ウィンドウに表示されるサブノードのラベルのフォント・スタイルは、次の状態を示します。</p>
<ul>
<li><b>通常。</b>現在のAntスクリプト内で定義されているターゲット。</li>
<li><b>イタリック。</b>別のAntスクリプトからインポートされたターゲット。</li>
<li><b>グレー表示。</b>直接には実行できない内部ターゲット。内部ターゲットには、「-」で始まる名前が付けられています。</li>
<li><b>太字。</b>スクリプトのデフォルト・ターゲット(存在する場合)。デフォルト・ターゲットは、プロジェクトの属性として、プロジェクト名など、プロジェクトのその他の属性とともに宣言されます。プロジェクトのデフォルト属性は、ソース・エディタで定義します。</li>
</ul>
<p>別のスクリプトからインポートされたが、インポート・スクリプトでオーバーライドされたターゲットは、リストされません。オーバーライドしたターゲットのみがリストされます。</p>
<p>Antスクリプト内のターゲットは、「プロジェクト」ウィンドウ、「ファイル」ウィンドウ、または「お気に入り」ウィンドウでAntスクリプトのノードから実行できます。これを行うには、Antスクリプト・ノードを右クリックし、「ターゲット実行」サブメニューからターゲットを選択します。ターゲットはアルファベット順にソートされます。強調されたターゲットのみがリストされます。説明属性で強調されていないターゲットを実行するには、「その他のターゲット」を選択します。内部ターゲットは別個に実行することができないため、リストから除外されます。</p>
<p>Antスクリプト・ノードのポップアップ・メニューを使用してターゲットを実行するかわりに、そのターゲットのノードを右クリックし、「ターゲット実行」を選択して実行することもできます。</p>
<p class="align-center"><a href="../../../images_www/articles/72/java/project-setup/setup-run.png" rel="lytebox" title="Antターゲットの実行"><img alt="Antターゲットの実行" border="1" src="../../../images_www/articles/72/java/project-setup/setup-run-small.png"></a></p>
<a name="ant-custom-task"></a><h3 class="tutorial">カスタムAntタスクの書込み</h3>
<p>カスタムAntタスクを使用して、Antの組込みタスクで提供される機能を拡張できます。カスタム・タスクは、プロパティの定義、入れ子にされた要素の作成、または<code>addText</code>メソッドを使用したタグ間でのテキストの直接書込みにしばしば使用されます。</p>
<p><b>IDEでカスタムAntタスクを作成するには:</b></p>
<ol>
<li>タスクを配置するパッケージを右クリックし、「<tt>新規</tt>」>「<tt>その他</tt>」を選択します。</li>
<li>「その他」カテゴリと、「カスタムAntタスク」ファイル・タイプを選択します。</li>
<li>ウィザードを完了します。</li>
</ol>
<p>カスタムAntタスクのファイルを作成するときには、ソース・エディタでテンプレートが開きます。このテンプレートには、Antタスクで実行される多くの一般的な操作のためのサンプル・コードが含まれています。テンプレートでは、コードの各セクションの後に、そのタスクをAntスクリプトで使用する方法も示されています。</p>
</div>
<br>
<div class="feedback-box">
<a href="/about/contact_form.html?to=3&subject=Creating,%20Importing,%20and%20Configuring%20Java%20Projects">このチュートリアルに関するご意見をお寄せください</a> </div>
<br style="clear:both;" >
<h2><a name="seealso">関連項目</a></h2>
<ul>
<li><i>NetBeans IDEによるアプリケーションの開発</i><a href="http://www.oracle.com/pls/topic/lookup?ctx=nb7400&id=NBDAG366">Javaプロジェクトの作成</a></li>
<li><a href="junit-intro.html">JUnitテストの作成</a></li>
<li><a href="debug-multithreaded.html">NetBeans IDEでのマルチスレッド・アプリケーションのデバッグ</a></li>
<li><a href="../../73/java/javase-jws_ja.html">NetBeans IDEでのJava Web Startの有効化</a></li>
</ul>
<hr>
</body>
</html>