NetBeans IDEでのネイティブ・パッケージング

ネイティブ・パッケージングは、アプリケーションをネイティブ・バンドルとしてパッケージ化し、システムJREやJavaFX SDKの外部依存に関係なくアプリケーションをインストールして実行できるようにする機能で、JavaFX 2.2 SDKで初めて導入されました。次に、Java SEプロジェクトでも使用できるようになりました。

ネイティブ・パッケージングではアプリケーションのデプロイメント・モデルは変更しません。アプリケーションをそのまま取り込んでJavaランタイムとともにパッケージ化し、使用しているオペレーティング・システムで通常使用されるインストーラを生成します。肝心な点は、ターゲット・マシンでのJavaランタイム・ユーザーのソフトウェアにまったく依存しないということです。そのようなインストーラはJavaがインストールされていないマシンに配布して実行できます。すると、アプリケーションと必要なJavaランタイムがインストールされます。"Hello world"アプリケーションの場合でさえ、アプリケーション自体と大容量のJavaランタイム・アーティファクトが含まれるため、インストーラのサイズは非常に大きくなります。

このチュートリアルでは、IDEにバンドルされているサンプル・アプリケーションに基づいて、Windowsオペレーティング・システム向けに、Java SEアプリケーション用のEXEインストーラおよびJavaFXアプリケーション用のMSIインストーラを作成します。

注意:

  • 生成されるEXEおよびMSIインストーラはプラットフォーム固有で、EXE/MSIインストール可能パッケージが作成されたターゲットJavaプラットフォームと互換性のあるシステムでのみ実行されます。(たとえば、EXEまたはMSIインストーラが64ビットJDKがインストールされているマシンで作成された場合、64ビットWindowsがインストールされたマシンで実行する必要があります。)
  • Windowsでは、両方のアプリケーションともC:\Users\<username>\AppData\Local\ディレクトリにインストールされ、「スタート」メニューから利用できます。

目次

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

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

ソフトウェアまたはリソース 必須バージョン
NetBeans IDE 7.4または8.0
Java Development Kit (JDK) 7 update 25以降または8
Inno Setup 5.5またはそれ以降
WiX 3.7またはそれ以降

必要なツールのインストールおよびパスへの追加

ネイティブ・パッケージングに対するIDEサポートを使用するには、さらに次のツールをインストールする必要があります。

  • WindowsでEXEインストーラを生成するためにInno Setup 5.5(またはそれ以降)が必要です。
  • WindowsでMSIインストーラを生成するためにWiX 3.7(またはそれ以降)が必要です。

注意: 各プラットフォーム向けにインストーラを作成するために必要なツールのリストは、NetBeans IDEによるアプリケーションの開発ネイティブ・インストーラとしてのアプリケーションのパッケージングを参照してください。

Inno Setupをインストールするには:

  1. 「Inno Setup Downloads」ページからispack-5.5.3.exeをダウンロードします。
  2. ファイルをダブルクリックして、インストーラを起動します。
  3. Inno Setupライセンス契約に同意し、「Next」をクリックします。
  4. Inno Setupをインストールするためのインストール・ウィザードの指示に従います。

WiXをインストールするには:

  1. 「WiX Toolset - Download」ページからwix37.exeをダウンロードします。
  2. ファイルをダブルクリックして、インストーラを起動します。
  3. WiXをインストールするためのインストール・ウィザードの指示に従います。

Inno Setup/WiXをシステム・パス変数に追加するには:

  1. Windows 7で、「スタート」>「コンピュータ」>「システムのプロパティ」>「システムの詳細設定」を選択します。
  2. 「詳細設定」タブを選択し、「環境変数」ボタンをクリックします。
  3. 「システム環境変数」ペインでPath変数をダブルクリックします。
  4. 「システム変数の編集」ダイアログ・ボックスで、「変数値」フィールドにセミコロンと新しいパス(たとえば、C:\Program Files (x86)\Inno Setup 5C:\Program Files (x86)\WiX Toolset v3.6\binなど)を追加します。
  5. 「OK」をクリックして、開いているダイアログ・ボックスをすべて閉じます。

注意:

  • インストールされたツールのパスが通っていることを確認するには、「コマンド プロンプト」ウィンドウを開き、iscc.exe (Inno Setupの場合)またはcandle.exe (WiXの場合)と入力します。(コマンド プロンプトがすぐに閉じる場合、それぞれcmd.exe /c cmd.exe /k iscc.exeまたはcmd.exe /c cmd.exe /k candle.exeと指定してみてください。)
    次の図に、Inno Setupがシステム・パス変数に追加されている場合のコマンド プロンプトでの表示を示します。

    コマンド プロンプト

  • ツールをシステム・パス変数に追加した後、必ずIDEを再起動してください。

Java SEプロジェクトでのネイティブ・パッケージング

IDEでネイティブ・パッケージング・サポートを利用するには、次の手順を実行する必要があります。

Java SEプロジェクトの設定

アプリケーションをインストーラにパッケージングする前に、アプリケーション自体を作成する必要があります。

NetBeans IDEに含まれているAnagramゲーム・サンプルを使用して新しいJava SEプロジェクトを作成します。

IDEプロジェクトを作成するには:

  1. IDEで、「ファイル」>「新規プロジェクト」を選択します。
  2. 新規プロジェクト・ウィザードで、「サンプル」カテゴリを展開して「Java」を選択します。
  3. 「プロジェクト」リストで「アナグラム・ゲーム」を選択します。「次」をクリックします。

    Java SEプロジェクトの作成

  4. 「名前と場所」パネルで、「プロジェクト名」および「プロジェクトの場所」フィールドのデフォルト値をそのままにします。
  5. 「終了」をクリックします。
    IDEによってJava SEプロジェクトが作成され、開かれます。

作成されたプロジェクトが正常に動作することをテストするには、メイン・メニューから「実行」>「プロジェクトの実行」を選択して実行します。
Anagramsアプリケーションが起動し、マシンに表示されます。

実行中のAnagramsアプリケーション

IDEでのネイティブ・パッケージングの有効化

ネイティブ・パッケージングのアクションは、デフォルトでは、IDEで無効になっています。

「プロジェクト」ウィンドウでAnagramGameプロジェクトを右クリックして、作成されたJava SEプロジェクトに対してIDEで使用可能なアクションを確認します。プロジェクトのコンテキスト・メニューにはパッケージングに関連するアクションはありません。

パッケージングのアクションのないコンテキスト・メニュー

プロジェクに対してネイティブ・パッケージングのアクションを有効にするには:

  1. 「プロジェクト」ウィンドウでプロジェクトのノードを右クリックし、コンテキスト・メニューから「プロパティ」を選択します。
  2. 「プロジェクト・プロパティ」ダイアログ・ボックスで、「デプロイメント」カテゴリを選択し、「プロジェクト・メニューでネイティブ・パッケージング・アクションを有効化」オプションを選択します。

    選択された「ネイティブ・パッケージングの有効化」

  3. 「OK」をクリックします。
    「パッケージとして」コマンドがプロジェクトのコンテキスト・メニューに追加されます。

    コンテキスト・メニューで有効になっている「パッケージとして」アクション

アプリケーションのビルド

デプロイメント用にアプリケーションを消去してビルドします。

プロジェクトを消去してビルドするには:

  • メイン・メニューから「実行」>「プロジェクトを消去してビルド」を選択します。
    「出力」ウィンドウに結果が表示されます。

    出力ウィンドウ

jarファイルを含むdistフォルダがプロジェクト・フォルダに作成されます。

EXEインストーラの作成

これで、Windows用インストーラにアプリケーションをパッケージ化できます。

EXEインストーラをビルドするには:

  • AnagramGameプロジェクトを右クリックし、コンテキスト・メニューから「パッケージとして」>「EXEインストーラ」を選択します。

注意: Inno Setupがインストールされ、システム・パス変数に追加されている場合にのみEXEインストーラが作成されます。

「出力」ウィンドウに、進捗とパッケージング処理の結果が表示されます。

「出力」ウィンドウに、EXEインストーラのビルドの進捗が表示されます。

注意: IDEが進捗の一部を出力した後、しばらく何も行われていないように見えます。この間、Inno Setupがバックグラウンドで動作しています。パッケージングが完了するまで少し時間がかかります。

EXEインストーラが完成すると、AnagramGame/dist/bundles/ディレクトリに置かれます。

「出力」ウィンドウに、EXEインストーラのビルドの進捗が表示されます。

JavaFXプロジェクトでの自己完結型アプリケーション・パッケージング

IDEでネイティブ・パッケージング・サポートを使用して、インストール可能なJavaFXアプリケーションをビルドするには、次の手順を実行する必要があります。

JavaFXプロジェクトの作成

IDEにバンドルされたBrickBreakeサンプル・プロジェクトを使用してJavaFXプロジェクトを作成することから始めます。

IDEでJavaFXプロジェクトを作成するには:

  1. IDEで、「ファイル」>「新規プロジェクト」を選択します。
  2. 新規プロジェクト・ウィザードで「サンプル」カテゴリを展開し、「JavaFX」を選択します。
  3. 「プロジェクト」リストでBrickBreakerを選択します。「次」をクリックします。
  4. 「名前と場所」パネルで、「プロジェクト名」、「プロジェクトの場所」および「JavaFXプラットフォーム」の各フィールドをデフォルト値のままにします。

    JavaFXプロジェクトの作成

  5. 「終了」をクリックします。
    IDEの「プロジェクト」ウィンドウにBrickBreaker JavaFXが表示されます。

作成されたプロジェクトが正常に動作することをテストするには、メイン・メニューから「実行」>「プロジェクトの実行(BrickBreaker)」を選択して実行します。
Brick Breakerアプリケーションが起動し、マシンに表示されます。

実行中のBrick Breakerアプリケーション

プロジェクトでのネイティブ・パッケージングの有効化

IDEでプロジェクトに対してネイティブ・パッケージング・サポートを使用するには、まず有効化する必要があります。

Brick Breakerプロジェクトを右クリックしても、ネイティブ・パッケージングに関連するアクションは表示されません。

パッケージングのアクションのないコンテキスト・メニュー

プロジェクトのコンテキスト・メニューでネイティブ・パッケージングのアクションを有効にするには:

  1. 「プロジェクト」ウィンドウでプロジェクトのノードを右クリックし、コンテキスト・メニューから「プロパティ」を選択します。
  2. 「プロジェクト・プロパティ」ダイアログ・ボックスで、「ビルド」カテゴリの「デプロイメント」を選択し、「ネイティブ・パッケージングの有効化」オプションを選択します。

    JavaFXプロジェクトで選択された「ネイティブ・パッケージングの有効化」

  3. 「OK」をクリックします。
    「パッケージとして」項目がプロジェクトのコンテキスト・メニューに追加されます。

    JavaFXプロジェクトのコンテキスト・メニューで有効になっている「パッケージとして」アクション

アプリケーションのビルド

JavaFXアプリケーションの消去およびビルドの準備ができました。

プロジェクトを消去してビルドするには:

  • メイン・メニューから「実行」>「プロジェクトを消去してビルド」を選択します。
    「出力」ウィンドウに結果が表示されます。

注意: ビルドが成功したけれども、IDEから「出力」ウィンドウに「warning: [options] bootstrap class path not set in conjunction with -source 1.6」が表示される場合、次のようにプロジェクトのプロパティで「ソース/バイナリ形式」をJDK 8に設定し、プロジェクトを再度消去およびビルドする必要があります。

  1. 「プロジェクト」ウィンドウでBrickBreakerプロジェクトを右クリックし、「プロパティ」を選択します。
  2. 「プロジェクト・プロパティ」ダイアログ・ボックスで、「ソース」カテゴリを選択します。
  3. 「ソース/バイナリ形式」をJDK 8に設定し、「OK」をクリックします。
  4. 「プロジェクト」ウィンドウでBrickBreakerを右クリックし、コンテキスト・メニューから「消去してビルド」を選択します。

MSIインストーラの作成

これで、アプリケーションをWindows固有のインストール可能なパッケージにラップできます。

MSIインストーラをビルドするには:

  • BrickBreakerプロジェクトを右クリックし、コンテキスト・メニューから「パッケージとして」>「MSIインストーラ」を選択します。

注意: WiXがインストールされ、システム・パス変数に追加されている場合にのみMSIインストーラが作成されます。

「出力」ウィンドウに、進捗とパッケージング処理の結果が表示されます。

「出力」ウィンドウに、MSIインストーラのビルドの進捗が表示されます。

注意: IDEが進捗の一部を出力した後、しばらく何も行われていないように見えます。この間、WiXがバックグラウンドで動作しています。パッケージングが完了するまで少し時間がかかります。

インストール可能なJavaFXアプリケーションは、BrickBreaker/dist/bundles/ディレクトリに置かれます。

MSIインストーラ

インストール可能なアプリケーションの検証

AnagramGame-1.0.exeおよびBrickBreaker-1.0.msiインストーラが完成したら、AnagramおよびBrickBreakerアプリケーションがネイティブでインストールされるディレクトリを確認する必要があります。

インストーラを確認するには:

  1. ハード・ドライブでインストーラ・ファイル(AnagramGame-1.0.exeまたはBrickBreaker-1.0.msi)に移動します。
  2. ダブルクリックして、インストーラを実行します。

両方のアプリケーションともC:\Users\<username>\AppData\Local\ディレクトリにインストールされ、「スタート」メニューから利用できる必要があります。

関連項目


学習に戻る

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