// 
//     Licensed to the Apache Software Foundation (ASF) under one
//     or more contributor license agreements.  See the NOTICE file
//     distributed with this work for additional information
//     regarding copyright ownership.  The ASF licenses this file
//     to you under the Apache License, Version 2.0 (the
//     "License"); you may not use this file except in compliance
//     with the License.  You may obtain a copy of the License at
// 
//       http://www.apache.org/licenses/LICENSE-2.0
// 
//     Unless required by applicable law or agreed to in writing,
//     software distributed under the License is distributed on an
//     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
//     KIND, either express or implied.  See the License for the
//     specific language governing permissions and limitations
//     under the License.
//

= Javaデスクトップ・アプリケーションのパッケージ化と配布
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Javaデスクトップ・アプリケーションのパッケージ化と配布 - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Javaデスクトップ・アプリケーションのパッケージ化と配布

多くの初級プログラマが尋ねる質問の1つに、「IDEでアプリケーションを作成しましたが、これをIDEの外部のコマンド行から動作させるにはどうすればよいですか」というものがあります。同様に、「このアプリケーションを他のユーザーに、IDE全体を一緒に提供することなく配布するにはどうすればよいですか」と尋ねる場合もあります。

これらの質問への答えは比較的単純ですが、必ずしも明白ではありません。このドキュメントでは、IDEを使用してアプリケーションを配布やデプロイメントのために準備する方法の基本を説明することによって、これらの質問に対処します。さらに、このドキュメントでは、システムを構成するために必要になる可能性のある(または、アプリケーションのユーザーに渡すことが必要になる可能性のある)情報を提供します。ここでは、ユーザーが次の方法でアプリケーションにアクセスできるように、アプリケーションをデプロイするためのいくつかの異なるアプローチを示します。

* アプリケーションのJAR (Java Archive)ファイルをダブルクリックする。
* コマンド行からアプリケーションをコールする。
* スクリプト・ファイルからアプリケーションをコールする。
* Java Web Startを使用する。


image::images/netbeans-stamp.png[title="このページの内容は、NetBeans IDE 8.0に適用されます"]


 

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

|===
|ソフトウェアまたはリソース |必須バージョン 

|link:https://netbeans.org/downloads/index.html[+NetBeans IDE+] |バージョン8.0 

|link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java Development Kit (JDK)+] |

バージョン7または8

 

|link:https://netbeans.org/projects/samples/downloads/download/Samples%252FJava%252FDeploymentTutorial.zip[+デプロイメント・チュートリアルのソース・ファイル+] |

 

 
|===



== 実行可能なJARファイルの作成

チュートリアルのこの部分では、IDEで配布可能なアプリケーションを作成した後、そのアプリケーションをIDEの外部から実行するための方法を示します。このアプリケーションを実行可能なlink:http://download.oracle.com/javase/tutorial/deployment/jar/run.html[+JAR+]ファイルの形式でパッケージ化します。

JARファイルは、複数のファイルやフォルダを含めることができるアーカイブ・ファイルです。JARファイルはzipファイルに似ていますが、JARファイルには、Javaアプリケーションを配布するために役立つ追加の属性を含めることができます。これらの属性には、JARファイルのデジタル署名、追加の圧縮、マルチプラットフォーム互換性などが含まれます。

この課題では、IDEプロジェクトを作成した後、そのプロジェクトに2つのあらかじめ記述されたJavaソース・ファイルを配置します。次に、クラスをコンパイルし、実行可能なJARファイルをビルドします。その後、JARファイルをIDEの外部から実行する方法について学習します。

このチュートリアルで使用されるクラスには、テキスト・ファイル内部のテキストまたは正規表現パターンを検索するために使用できる、link:http://www.gnu.org/software/grep/[+GNU grep+]ユーティリティの機能が実装されています。このプロジェクトにはコマンド行とGUIの両方のバージョンのアプリケーションが含まれているため、アプリケーションを実行するための異なる方法を確認できます。


=== 既存のソースを使用したプロジェクトの作成

1. link:https://netbeans.org/projects/samples/downloads/download/Samples%252FJava%252FDeploymentTutorial.zip[+DeploymentTutorial.zip+]ファイルをダウンロードし、その内容をシステム上に抽出します。
このzipアーカイブには、アプリケーションのソース・ファイルに加えて、このチュートリアルで使用されるその他のファイルもいくつか含まれています。



. NetBeans IDEで、「ファイル」>「新規プロジェクト」を選択します。



. カテゴリを選択ページで、「Java」カテゴリにある「既存のソースを使用するJavaプロジェクト」を選択し、「次」をクリックします。


. ウィザードの名前と場所ページで、プロジェクト名として「 ``AnotherGrep`` 」と入力し、プロジェクトの場所を指定します。
「次」をクリックします。

プロジェクト・フォルダが、プロジェクトにインポートするソース・ファイルと同じ場所に存在する必要は_ありません_。



. ウィザードの既存のソース・ページで、プロジェクトに含めるソースを指定します。
「ソース・パッケージ・フォルダ」フィールドの右にある「フォルダの追加」ボタンをクリックします。システム上にある解凍済の ``DeploymentTutorial`` フォルダに移動してそのフォルダを展開し、 ``src`` フォルダを選択して「開く」をクリックします。 ``src`` フォルダが「ソース・パッケージ・フォルダ」フィールドに追加されます。


. 「終了」をクリックします。

*注意:* たとえば、プロジェクトへのインポートから一部のソース・ファイルを除外する場合は、「次」をクリックして最後の「含める/除外する」ウィンドウを開きます。ここでは、 ``src`` フォルダ内のすべてのソース・ファイルを使用するため、「終了」をクリックして新規プロジェクト・ウィザードでの操作を終了します。

プロジェクトがIDEで開かれ、「プロジェクト」ウィンドウに表示されます。プロジェクトの「ソース・パッケージ」ノードを展開することによって、プロジェクトの内容を調べることができます。ここには、 ``Grep`` と ``xGrep`` という名前のクラスが表示されます。 ``Grep.java`` は、このアプリケーションのコンソール・バージョンです。 ``xGrep.java`` はこのアプリケーションのGUIバージョンであり、 ``Grep.java`` で定義されたメソッドを使用します。


=== プロジェクトの構成

次のような、実行する必要のあるいくつかの構成手順があります。

* ソースをコンパイルするために使用されるJavaプラットフォームを選択します。
* プロジェクトのメイン・クラスを設定します。これを行うことにより、プロジェクトのビルド時に作成するJARファイルが実行可能であることが保証されます。


==== Javaプラットフォームの確認

このプロジェクトは、Java 7またはJava 8プラットフォーム上でコンパイルおよび実行する必要があります。そのため、このプロジェクトのプラットフォームとしてJava 7またはJava 8がそれぞれ使用されることを確認する必要があります。

1. プロジェクト・ノードを右クリックし、「プロパティ」を選択します。
2. 「ライブラリ」タブで、「Javaプラットフォーム」が「JDK 1.7」(またはJDK 1.8)であることを確認します。
3. 「ソース」タブの「ソース/バイナリ形式」で「JDK 7」(またはJDK 8)を選択します。
4. 「OK」をクリックして「プロパティ」ウィンドウを閉じます。


==== メイン・クラスの設定

ユーザーが(JARファイルをダブルクリックするか、またはコマンド行で「 ``java -jar AnotherGrep.jar`` 」と入力することによって) JARファイルを容易に実行するには、そのJARの_マニフェスト_ファイル内でメイン・クラスを指定する必要があります。(マニフェストは、アプリケーションを実行するときに ``java`` 起動プログラムに役立つJARファイルに関する情報を含む、JARファイルの標準の部分です。)メイン・クラスは、 ``java`` 起動プログラムがアプリケーションの実行を開始するエントリ・ポイントとして機能します。

プロジェクトをビルドすると、IDEによってJARファイルがビルドされ、マニフェストが含められます。プロジェクトのメイン・クラスを設定する場合は、そのメイン・クラスがマニフェストで指定されていることを確認してください。

プロジェクトのメイン・クラスを設定するには:

1. プロジェクト・ノードを右クリックし、「プロパティ」を選択します。
2. 「実行」カテゴリを選択し、「メイン・クラス」フィールドに ``anothergrep.xGrep`` と入力します。
3. 「OK」をクリックして、「プロジェクト・プロパティ」ダイアログ・ボックスを閉じます。

このチュートリアルで後でプロジェクトをビルドすると、マニフェストが生成され、次のエントリが含まれます。


[source,java]
----

Main-Class: anothergrep.xGrep
----


=== プロジェクトのビルドおよびJARファイルの作成

これでソースの準備ができ、プロジェクトが構成されたので、次にプロジェクトをビルドします。

プロジェクトをビルドするには:

* 「実行」>「プロジェクトのビルド」(AnotherGrep)を選択します。
または、「プロジェクト」ウィンドウでプロジェクトのノードを右クリックし、「ビルド」を選択します。

プロジェクトをビルドすると、次が行われます。

*  ``build`` フォルダおよび ``dist`` フォルダは、プロジェクト・フォルダ(以後_PROJECT_HOME_フォルダと呼ぶ)に追加されます。
* すべてのソースは、_PROJECT_HOME_ ``/build`` フォルダにある ``.class`` ファイルにコンパイルされます。
* プロジェクトが含まれたJARファイルが ``_PROJECT_HOME_/dist`` フォルダ内に作成されます。
* プロジェクトのライブラリを指定した場合(JDKに加えて)、 ``dist`` フォルダに ``lib`` フォルダが作成されます。ライブラリが ``dist/lib`` にコピーされます。
* JARにあるマニフェスト・ファイルが更新され、プロジェクトのクラスパスにあるメイン・クラスとライブラリを指定するエントリが含まれます。

*注意:* IDEの「ファイル」ウィンドウで、マニフェストの内容を表示できます。プロジェクトをビルドした後に、「ファイル」ウィンドウに切り替え、 ``dist/AnotherGrep.jar`` に移動します。JARファイルのノードを展開し、 ``META-INF`` フォルダを展開します。次に、 ``MANIFEST.MF`` をダブルクリックしてソース・エディタのマニフェストを表示します。


[source,java]
----

Main-Class: anothergrep.xGrep
----

マニフェスト・ファイルの詳細を調べるには、Javaチュートリアルのlink:http://java.sun.com/docs/books/tutorial/deployment/jar/manifestindex.html[+この章+]を読んでください。


== JARファイルの実行と配布


=== IDEの内部でのアプリケーションの実行

IDEでアプリケーションを開発する場合は通常、配布する前に、それらのアプリケーションをテストして調整する必要があります。IDEからアプリケーションを実行することによって、作業中のアプリケーションを容易にテストできます。

IDEで ``AnotherGrep`` プロジェクトを実行するには、「プロジェクト」ウィンドウでプロジェクトのノードを右クリックし、「実行」を選択します。

「xGrep」ウィンドウが開きます。「Browse」ボタンをクリックすると、テキストのパターンを検索するファイルを選択できます。「Search Pattern」フィールドに、一致を検索するテキストまたは正規表現パターンを入力し、「Search」をクリックします。それぞれの一致の結果が「xGrep」ウィンドウの「Output」領域に表示されます。

このアプリケーションで使用できる正規表現に関する情報は、link:http://www.gnu.org/software/grep/manual/html_node/Regular-Expressions.html#Regular-Expressions[+ここ+]や、その他の多くの場所で入手できます。


=== IDEの外部でのアプリケーションの実行

アプリケーションの開発を終了したら、配布する前に、そのアプリケーションがIDEの外部でも動作することの確認が必要になる場合があります。

次の手順に従うことによって、IDEの外部でアプリケーションを実行できます。

* システムのファイル・マネージャ(たとえば、Windows XPシステム上の「マイ コンピュータ」ウィンドウ)で、 ``_PROJECT_HOME_/dist`` に移動して ``AnotherGrep.jar`` ファイルをダブルクリックします。

「xGrep」ウィンドウが開いたら、アプリケーションが正常に起動されたことがわかります。

「xGrep」ウィンドウが開かない場合は、システムにJARファイルとJava Runtime Environmentの間のファイルの関連付けが存在しない可能性があります。後述する<<troubleshooting,JARファイルの関連付けのトラブルシューティング>>を参照してください。


=== アプリケーションの他のユーザーへの配布

これでIDEの外部でアプリケーションが動作することが確認されたため、そのアプリケーションを配布する準備ができました。

* このアプリケーションを使用するユーザーに、アプリケーションのJARファイルを送信します。このアプリケーションのユーザーは、JARファイルをダブルクリックすることによって実行できるはずです。これが正しく機能しない場合は、後述する<<troubleshooting,JARファイルの関連付けのトラブルシューティング>>の項にある情報を示してください。

*注意:* アプリケーションがJDKに含まれているライブラリ以外の追加ライブラリに依存している場合は、配布にそれらのライブラリも含める必要があります(この例には該当しません)。これらのライブラリの相対パスは、IDEでアプリケーションを開発しているときにJARのマニフェスト・ファイルの ``classpath`` エントリに追加されます。起動時に、これらの追加ライブラリが指定されたクラスパス(つまり、相対パス)に見つからない場合、アプリケーションは起動されません。
アプリケーションのJARファイルとライブラリを含むzipアーカイブを作成し、このzipファイルをユーザーに提供します。このzipファイルを展開して、このJARファイルとライブラリのJARファイルが同じフォルダに存在することを確認するようユーザーに指示します。アプリケーションのJARファイルを実行します。


== Javaアプリケーションの起動

この課題の目標は、コマンド行からアプリケーションを起動するためのいくつかの方法を示すことです。

この課題では、Javaアプリケーションを起動するための次の2つの方法を示します。

* コマンド行から ``java`` コマンドを実行します。
* スクリプトを使用して、JARファイル内のクラスをコールします。


=== コマンド行からのアプリケーションの起動

 ``java`` コマンドを使用して、コマンド行からアプリケーションを起動できます。実行可能なJARファイルを実行する場合は、このコマンドの ``-jar`` オプションを使用します。

たとえば、AnotherGrepアプリケーションを実行するには、次の手順を行います:

1. ターミナル・ウィンドウを開きます。Microsoft Windowsシステムでこれを行うには、「スタート」>「ファイル名を指定して実行」を選択し、「名前」フィールドに「 ``cmd`` 」と入力して「OK」をクリックします。
2.  ``_PROJECT_HOME_/dist`` フォルダにディレクトリを変更します( ``cd`` コマンドを使用します)。
3. 次の行を入力して、アプリケーションのメイン・クラスを実行します。

[source,java]
----

java -jar AnotherGrep.jar
----

これらの手順に従ってもアプリケーションが実行されない場合は、次のいずれかを実行する必要があります。

* ステップ3で、 ``java`` バイナリのフル・パスを含めます。たとえば、JDKまたはJREが存在する場所に応じて、次のように入力します。

[source,java]
----

C:\Program Files\Java\jdk1.7.0_51\bin\java -jar AnotherGrep.jar
----
* コマンド行から ``java`` バイナリのパスを指定しなくても済むように、PATH環境変数にJavaバイナリを追加します。<<path,PATH環境変数の設定>>を参照してください。


=== スクリプトからのアプリケーションの起動

配布するアプリケーションがコンソール・アプリケーションである場合は、そのアプリケーションをスクリプトから起動するのが便利なことに気付くかもしれません(特に、そのアプリケーションが、実行のために長く、複雑な引数を必要とする場合)。この項では、Grepプログラムのコンソール・バージョンを使用します。その場合、JARファイルに引数(検索パターンとファイル・リスト)を渡す必要がありますが、それはこのスクリプトで呼び出されます。コマンド行での入力を減らすために、テスト・アプリケーションを実行するのに適した単純なスクリプトを使用します。

まず、アプリケーション内のメイン・クラスをコンソール・バージョンのクラスになるように変更し、JARファイルを再ビルドする必要があります。

1. IDEの「プロジェクト」ウィンドウで、プロジェクトのノード( ``AnotherGrep`` )を右クリックし、「プロパティ」を選択します。
2. 「実行」ノードを選択し、「メイン・クラス」プロパティを(「 ``anothergrep.xGrep`` 」から)「 ``anothergrep.Grep`` 」に変更します。「OK」をクリックして、「プロジェクト・プロパティ」ウィンドウを閉じます。
3. プロジェクトのノードをもう一度右クリックし、「プロジェクトを消去してビルド」を選択します。

これらの手順を完了すると、JARファイルが再ビルドされ、JARファイルのマニフェストの ``Main-Class`` 属性が ``anothergrep.Grep`` を指すように変更されます。


==== link:http://www.gnu.org/software/bash/bash.html[+BASH+]スクリプト -- UNIXおよびLinuxマシン用

link:https://netbeans.org/projects/samples/downloads/download/Samples%252FJava%252FDeploymentTutorial.zip[+DeploymentTutorial.zip+]ファイルの内容を抽出したシステム上のフォルダ内に、 ``grep.sh``  bashスクリプトがあります。それを見てください。


[source,java]
----

#!/bin/bash
                    java -jar dist/AnotherGrep.jar $@
----

1行目は、どのシェルを使用してこれを解釈するかを明示しています。2行目は、IDEによって ``_PROJECT_HOME_/dist`` フォルダ内に作成されたJARファイルを実行します。 ``$@`` は単純に、指定されたすべての引数を、それぞれ引用符で囲んでコピーします。

このスクリプトでは、JavaバイナリがPATH環境変数に含まれていることを想定しています。このスクリプトが正しく動作しない場合は、<<path,PATH環境変数の設定>>を参照してください。

bashスクリプトの詳細は、link:http://www.gnu.org/software/bash/manual/bashref.html[+ここ+]を参照してください。


==== Windowsマシン用の .batスクリプト

Microsoft Windowsシステムでは、バッチ・ファイルに一度に9つの引数しか渡すことができません。9つを超える引数がある場合は、JARファイルを複数回実行する必要があります。

これを処理するスクリプトは次のようになります。


[source,java]
----

                @echo off
                set jarpath="dist/AnotherGrep.jar"
                set pattern="%1"
                shift
                :loop
                  if "%1" == "" goto :allprocessed
                  set files=%1 %2 %3 %4 %5 %6 %7 %8 %9
                  java -jar %jarpath% %pattern% %files%
                  for %%i in (0 1 2 3 4 5 6 7 8) do shift
                goto :loop

                :allprocessed
                    
----

このスクリプトは、link:https://netbeans.org/projects/samples/downloads/download/Samples%252FJava%252FDeploymentTutorial.zip[+DeploymentTutorial.zip+]ファイルの内容を抽出したシステム上のフォルダ内に ``grep.bat`` として含まれているため、試してみることができます。

9つの引数は、このバッチ・ファイルの内部で ``%<ARG_NUMBER>`` で表されています。ここで、 ``<ARG_NUMBER>`` は ``<0-9>`` の範囲内にある必要があります。 ``%0`` は、スクリプト名のために予約されています。

プログラムに一度に(1回のループで) 9つの引数しか渡されないことがわかります。 ``for`` 文は、次のループに備えて単純に引数を9シフトします。 ``if`` 文によって空のファイル引数が検出されると(処理するファイルがそれ以上ない場合)、ループは終了します。

バッチ・スクリプト処理の詳細は、link:http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/batch.mspx[+このページ+]を参照してください。


== Java Web Start用のアプリケーションのパッケージ化

Java Web Startは、シングル・クリックでWebブラウザからJavaアプリケーションを実行するために使用されるテクノロジです。Java Web Startを使用したデプロイメントのためのアプリケーションのパッケージ化の詳細は、link:../../73/java/javase-jws.html[+NetBeans IDEでのJava Web Startの有効化+]を参照してください。ここでは、Java Web Startを使用してアプリケーションをデプロイ可能にするために従う必要のある簡単な手順のみを示します。

1. 「プロジェクト」ウィンドウでプロジェクトのノードを右クリックし、「プロパティ」を選択します。
2. 「プロジェクト・プロパティ」ウィンドウの「Web Start」タブで、「Web Startを有効化」チェックボックスを選択します。
3. 「コードベース」ドロップダウン・リストから「ローカル実行」を選択します(ここではローカル実行のみをテストするため)。
4. 「カスタマイズ」をクリックし、「署名」ダイアログ・ボックスで詳細を指定してアプリケーションを署名します。

*注意:* 2013年4月のJava SE 7 Update 21以降、すべてのJavaアプレットおよびWeb Startアプリケーションは、信頼できる証明書で署名することを求められます。詳細は、link:http://www.oracle.com/technetwork/java/javase/tech/java-code-signing-1915323.html[+JavaアプレットとWeb Start - コード署名+]を参照してください。



. その他の設定はすべてデフォルト値のままにして、「OK」をクリックします。


. プロジェクトのノードを右クリックし、「消去してビルド」を選択します。
このIDEコマンドによって、以前にコンパイルされたファイルやビルド出力がすべて削除され、アプリケーションが再コンパイルされて、プロジェクトが新しい設定でビルドされます。


. IDEの外部で、 ``_PROJECT_HOME_/dist`` フォルダを開き、 ``launch.html`` ファイルをブラウザで開きます。
「Launch」ボタンを含むテスト用HTMLページが開きます。


. 「Launch」ボタンをクリックしてアプリケーションを開きます。
Javaがロードされ、アプリケーションが起動されることが確認できます。

*注意:* 一部のブラウザでは、最初にJavaのダウンロード・ページにリダイレクトされます。


== トラブルシューティングのヒント


=== JARファイルの関連付けの指定

ほとんどのシステムでは、実行可能なJARファイルを単純にダブルクリックすることによって、そのJARファイルを実行できます。JARファイルをダブルクリックしても何も起こらない場合は、次の2つの理由のどちらかが原因である可能性があります。

* JARファイル・タイプがそのシステム上のJRE (Java Runtime Environment)に関連付けられていない。

JARファイル・タイプがJREに関連付けられている場合は、そのファイルを表すアイコンにJavaのロゴが含まれているはずです。

* JARファイル・タイプはJREに関連付けられているが、アイコンをダブルクリックしたときにJREに渡されるコマンドに ``-jar`` オプションが含まれていない。

*注意:* JARファイルの関連付けが、zipファイルを処理するソフトウェアなどの、インストールしたソフトウェアによって切り替えられる場合があります。

JARファイル・タイプを ``java`` 起動プログラムに関連付ける方法は、使用しているオペレーティング・システムによって異なります。

*注意:* いずれかのバージョンのJREがシステムにインストールされていることを確認します。バージョン1.4.2以降を使用するようにしてください。Javaがインストールされていない場合は、Javaアプリケーションを起動できません。(JDKをインストールすると、JREも取得されます。ただし、プログラマ以外にプログラムを配布する場合は、そのユーザーが必ずしもJREやJDKを持っているとは限りません。)

* Windows XPでは、「スタート」>「コントロール パネル」>「プログラムの追加と削除」を選択することによって、Javaのインストールされているバージョンを確認できます(たとえば、「Java(TM) 7 Update 51」が表示されます)。
* Windows VistaまたはWindows 7では、「スタート」>「コントロール パネル」>「プログラムおよびコンポーネント」を選択することによって、Javaのインストールされているバージョンを確認できます(たとえば、「Java(TM) 7 Update 51」が表示されます)。

システム上にJavaが存在しない場合は、link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java SEダウンロード・サイト+]からJREを取得できます。

システムにJavaがインストールされているが、ファイルの関連付けが機能していない場合は、Microsoft WindowsでJARファイルの関連付けを追加するための手順に進みます。

1. 「スタート」>「コントロール パネル」を選択します。
2. (Windows Vistaのみ該当)「コントロール パネル ホーム」>「プログラム」をクリックします。
3. Windows XPの場合は、「フォルダ オプション」をダブルクリックし、「ファイルの種類」タブを選択します。
Windows VistaまたはWindows 7の場合は、「既定のプログラム」をクリックし、「ファイルの種類またはプロトコルのプログラムへの関連付け」を選択します。


. 「登録されているファイルの種類」リストで、「JARファイル」を選択します。


. (Windows XPの場合は、ダイアログ・ボックスの「詳細」セクションで)「プログラムの変更」をクリックします。


. 「ファイルを開くプログラムの選択」ダイアログ・ボックスで、「Java Platform SEバイナリ」を選択します。


. 「OK」をクリックして「ファイルを開くプログラムの選択」ダイアログ・ボックスを終了します。


. 「閉じる」をクリックして、「フォルダ オプション」ダイアログ・ボックス(Windows XPの場合)、または「ファイルの種類またはプロトコルのプログラムへの関連付け」ダイアログ・ボックス(Windows 7の場合)を終了します。

*注意:* システム上でJARファイルがJava Platform SEバイナリに関連付けられているが、依然としてJARファイルをダブルクリックしても実行されない場合は、ファイルの関連付けで ``-jar`` オプションの指定が必要である可能性があります。

Microsoft Windows XPで、ファイルの関連付けで ``-jar`` オプションを指定するには:

1. 「スタート」>「コントロール パネル」を選択します。
2. Windows XPの場合は、「フォルダ オプション」をダブルクリックし、「ファイルの種類」タブを選択します。
3. 「登録されているファイルの種類」リストで、「JARファイル」を選択します。
4. ダイアログ・ボックスの「詳細」セクションで、「詳細設定」をクリックします。
5. 「ファイルの種類の編集」ダイアログ・ボックスで、「編集」をクリックします。
6. 「アクションを実行するアプリケーション」テキスト・フィールドで、JREのパスの最後に次を追加します。

[source,java]
----

 -jar "%1" %*
----
その後、フィールドには次のようなテキストが含まれているはずです。

[source,java]
----

"C:\Program Files\Java\jre1.7.0_51\bin\javaw.exe" -jar "%1" %*
----


. 「OK」をクリックして「アクションの編集」ダイアログ・ボックスを終了します。


. 「OK」をクリックして「ファイルの種類の編集」ダイアログ・ボックスを終了します。


. 「閉じる」をクリックして「フォルダ オプション」ダイアログ・ボックスを終了します。

*注意:* Windows Vista以降の詳細なファイルの関連付けは、RegEditを使用して設定できます。詳細は、link:http://technet.microsoft.com/en-us/magazine/ee914604.aspx[+「ファイルの種類」ダイアログで何が発生したか+]の記事を参照してください。

UNIXおよびLinuxシステムの場合、ファイルの関連付けを変更するための手順は、使用しているデスクトップ環境(GNOMEやKDEなど)によって異なります。デスクトップ環境のプリファレンス設定を確認するか、またはデスクトップ環境のドキュメントを参照してください。


=== PATH環境変数の設定

システム上のJDKまたはJREの場所を指し示さないとシステム上でJavaクラスまたはJARファイルを実行できない場合は、システムの ``PATH`` 変数の値の変更が必要である可能性があります。

Microsoft Windowsシステム上で実行している場合、PATH変数を設定するための手順は、使用しているWindowsのバージョンによって異なります。

次の手順は、Windows XPシステム上で ``PATH`` 変数を設定する場合を示しています。

1. 「スタート」>「コントロール パネル」を選択し、「システム」をダブルクリックします。
2. 「システムのプロパティ」ダイアログ・ボックスで、「詳細設定」タブをクリックします。
3. 「環境変数」タブをクリックします。
4. ユーザー変数の一覧で、「 ``PATH`` 」を選択し、「編集」をクリックします。
5. パスのリストの最後にJREの場所を追加します。このリスト内の場所はセミコロン(;)で区切られます。
たとえば、JREのある場所が`C:\Program Files\Java\jdk1.7.0_51`の場合、PATH変数の最後に次を追加します。

[source,java]
----

C:\Program Files\Java\jdk1.7.0_51\bin
----


. 「OK」をクリックして「環境変数」ダイアログ・ボックスを終了し、「OK」をクリックして「システムのプロパティ」ダイアログ・ボックスを終了します。

UNIXまたはLinuxシステム上で実行している場合、PATH変数を変更するための手順は、使用しているシェル・プログラムによって異なります。詳細は、使用しているシェルのドキュメントを参照してください。

link:/about/contact_form.html?to=3&subject=Feedback:%20Packaging%20and%20Distributing%20Java%20Desktop%20Applications[+このチュートリアルに関するご意見をお寄せください+]



== 次の手順

NetBeans IDEの使用方法については、NetBeansのWebサイトのlink:https://netbeans.org/kb[+ドキュメントおよびサポート+]・ページを参照してください。

Javaアプリケーションを開発するためのIDEのワークフロー(クラスパス管理を含む)の詳細は、link:javase-intro.html[+一般的なJavaアプリケーションの開発+]を参照してください。

NetBeans IDEのビルド機能の詳細は、_NetBeans IDEによるアプリケーションの開発_のlink:http://www.oracle.com/pls/topic/lookup?ctx=nb8000&id=NBDAG510[+Javaプロジェクトのビルド+]を参照してください。

