9

JRE を使用してアプリケーション jar を配布するにはどうすればよいですか? を使用して、exe で実行可能な jar を作成しlaunch4jます。

私のアプリケーションは、デスクトップ ベースのスイング アプリケーションです。ユーザーが JRE をインストールしていなくても、組み込みの JRE を使用して使用できるアプリケーションのようにしたいと考えています。JREをアプリで渡して使っています。アプリケーションと JRE のアンインストールは、ゲームのようにアンインストールされます。

私は、プリインストールされた JRE をアプリケーションに与えると、それが起こることを理解しています。にもタブ JRE が表示されますがlaunch4j、指定するパスがわかりません。このリンクも表示されますが、手順全体が明確に定義されている手順や役立つリンクはありません。

明確な答えを教えてください。あなたの答えがに基づいている場合、私は好むでしょうlaunch4j

4

4 に答える 4

5

アプリケーションをどのように配布しますか?インストーラーはありますか?

インストーラーがある場合は、任意のjreをバンドルして、それを使用するようにlaunch4jを構成できます。

ユースケースを再現するために私がしたこと:

  1. たとえば、C:\ tempなどのディレクトリを作成します。jdkをC:\ Program Files \ Java \ jdk1.6.0_23からC:\ temp\myownjdk1.6.0_23にコピーします。
  2. 私のJDKを使用するためのlaunch4j:[JRE]タブで、「myownjdk1.6.0_23」と入力します。
  3. バンドルされたJREパスと「プライベートJDKランタイムのみを使用する」ように構成しましたが、それが本当に必要かどうかはわかりません。

私はJDKを使用しましたが、JREでも同じことができると確信しています。また、(私が行ったように)バンドルに相対パスを使用する必要がある(または使用できる)と確信しています。

これは私の構成ファイルです:

<launch4jConfig>
  <dontWrapJar>false</dontWrapJar>
  <headerType>gui</headerType>
  <jar>C:\temp\demoapp.jar</jar>
  <outfile>C:\temp\thing.exe</outfile>
  <errTitle></errTitle>
  <cmdLine></cmdLine>
  <chdir></chdir>
  <priority>normal</priority>
  <downloadUrl>http://java.com/download</downloadUrl>
  <supportUrl></supportUrl>
  <customProcName>false</customProcName>
  <stayAlive>false</stayAlive>
  <manifest></manifest>
  <icon></icon>
  <jre>
    <path>myownjdk1.6.0_23</path>
    <minVersion></minVersion>
    <maxVersion></maxVersion>
    <jdkPreference>jdkOnly</jdkPreference>
  </jre>
</launch4jConfig>
于 2011-07-29T11:18:35.503 に答える
2

より良い戦略は、アプリを起動することです。Java Web Startを使用します。deployJava.jsJava の適切な最小バージョンが使用可能であることを確認するために使用します。ユーザーは適切な JRE を既にインストールしている可能性があり (そのため、ダウンロードは必要ありません)、アプリをアンインストールすることを選択すると、他の Java アプリケーションやアプレット用にそこにインストールされます。

これは、あなたが述べた要件の一部には適合しませんが、全体的に優れたオプションです。

于 2011-07-29T12:07:00.423 に答える
1

BitRockInstallBuilderをチェックアウトすることもできます。

Javaのサポートは非​​常に優れており、Javaが存在するかどうかを検出するだけでなく、JREを簡単に含めることができ、ランチャーバイナリを構築できます。

詳細については、http: //installbuilder.bitrock.com/docs/installbuilder-userguide/ar01s17.html#_bundling_a_jreを参照してください。

およびJavaコンポーネント/JREファイル:http: //installbuilder.bitrock.com/java/

上記のリンクのファイルを使用すると、プロジェクトにいくつかの変数を設定するだけで、インストーラーが機能します。

無料ではありませんが、プロジェクトがオープンソースの場合は、アプリケーションのインストーラーの作成に使用できる無料のオープンソースライセンスを申請できます。

免責事項:私はBitRock InstallBuilderの開発者の1人なので、偏見があります。

于 2011-08-09T08:44:30.343 に答える
0

必要な JRE を自動的にダウンロードしてインストールできる独自のバージョンの launch4j を作成しました (無人) (ダウンロードの進行状況が表示されますが、インストールの進行状況はまだ表示されず、JRE インストーラーをインストーラーの作業ディレクトリ以外のディレクトリにダウンロードするオプションはありません -誰かが興味を持っている場合は、この機能を追加できます)。オプションを設定するには、launch4j の「JRE」タブに移動するだけです。また、これは GUI インストール専用であり、現時点ではコンソール用ではありません。ここで入手できます: https://github.com/maztan/launch4j_auto_jre_download

于 2015-04-07T15:36:15.500 に答える