web-dev-qa-db-ja.com

JREをLaunch4jにバンドルする方法は?

私のコンピューターにはLaunch4Jがあり、素晴らしいプログラムです。私が興味を持っている機能の1つは、一般的な.EXEファイルにJREをバンドルする機能です。ただし、これを行う方法を説明したドキュメントは見つかりません。

JREをEXEにバンドルするにはどうすればよいですか?さらに、コンパクトでポータブルなJREを実行するにはどうすればよいですか? Oracleのダウンロードリンクは、インストーラパッケージ用です。

69
CodeBunny

いくつかの試みの後、私は最終的に私のアプリケーションにjreをバンドルするための回避策を取得します:

アプリをZipファイルとしてパッケージ化し、次のフォルダーを中に入れます。

containerFolder
|- jre
      |-bin (in bin there is Java.exe)
      |-lib
|- cfg (to save the user configuration, but it's not needed)
|- bin (my application with the .exe and the .jar and all the other stuff)

Launch4jのxmlファイルで、次のようにjreを構成します。

<jre>
    <path>../jre</path>
    <opt>-DgvSIG.confDir=../cfg</opt>
</jre>

ここでのコツは、パスがJava.exeファイルへではないことです。 jreへのパスは.exeの位置に相対的であり、Java.exeファイルの前の1つのフォルダーを指す必要があります

私が使用しているjreフォルダーは、Windowsシステムにインストールされたjreフォルダーからコピー&ペーストするだけです。

73
Francisco Puga

あなたと同じような問題。心配ありません。そのすべてが将来のソリューションを解決するために最大の深さで解決します。ユーザーが[〜#〜] jre [〜#〜]をバンドルする方法。ユーザーがインストールする必要なしにJavaかどうか。あなたのJavaアプリケーションが実行されます。

  1. libおよびbinフォルダーを[〜#〜] jre [〜#〜]フォルダーからプロジェクトにコピーしますdistフォルダー

jar to exe conversion

  1. launch4jを開き、次の設定を入力します。 enter image description here

秘Theは、javaw.exeを含む完全パスを指定する必要があることです。

楽しい!!!!

5
danielad

私は次のことをしましたが、それはver Launch4j 3.11を使用してうまくいきました:

  1. アプリケーション用に新しいフォルダーを作成しました(MyAppなど)。
  2. JarファイルをJava project distフォルダーからlibフォルダーとともにMyAppにコピーしました。
  3. アプリケーションフォルダーMyAppにjreというフォルダーを作成したため、MyAppフォルダーには次が含まれます。
    • MyApp.jar
    • lib <-これにはmy Java app。
    • jre
  4. BinおよびlibフォルダーをJava jreフォルダー(C:\ Program Files(x86)\ Java\jre7)からMyApp\jreにコピーしました
  5. 必要なオプションをすべて設定したLaunch4jで、バンドルされたJREパスを「jre」に設定します

    Launch4j JRE options

  6. 検索オプションで「プライベートJDKランタイムのみを使用する」が選択されていることを確認してください。
3
Ahmed Awad

Launch4Jを使用してJavaアプリケーションを特定のJREにバンドルする実際の例は、 https://github.com/vZome/vzome/blob/master/desktop/にあります。 platform/windows/README.md 。この特定のディストリビューションは、requireに設定されています- vZome ターゲットプラットフォームで見つかったJREではなく、バンドルJREを使用する。

お役に立てれば。

0
David

これをやったばかりです。上記はjreをバンドルする方法を明確に説明しています。

ここで、苦労した経験を共有します。 launch4jでラッパーexeを作成した後にインストーラーexeを作成する場合は、launch4jおよびjreのファイルパスに注意してください。これは私の問題を解決するために使用した私のパスです:

launch4j、bin/jre、resources/bin/jre。

launch4j、bin、およびリソースは同じレベルです。

0
Michelle Mmu