7

Java があるかどうかに関係なく、任意の Windows コンピューターでアプリケーションを実行できるように、JRE を jar ファイルにバンドルしようとしています。jsmooth のマニュアルには次のように書かれています。

For the option to work correctly, you have to put a JRE in a directory near the EXE (generally in a subdirectory called "jre" or whatever). Once the exe is generated, it will FIRST try to locate the JRE at the location mentioned. If it can't be found there, then it will fallback in the normal jre look-up mode (search for a jre or a jdk in the Windows registry or in commonly-used environment variables). There is no JVM-version check when using a bundled JRE, as the packager is supposed to bundle a suitable JVM for the application.

これは、jre サブフォルダーを jar に含めるか、独自の個別の jar にするか、exe に付属するフォルダーに配置する必要があることを意味しますか? exeのあるフォルダーにあるはずの場合、jreサブフォルダーへの相対パスを指定するにはどうすればよいですか?

私のディレクトリは次のとおりです。

設定/

-jre/

-myprogram.exe

..\jreGUI画面で、.\jre、を使ってみ..\setup\jreましたが、どれもうまくいきませんでした。

どんなアイデアやリードも大歓迎です。本当にありがとう!

編集:試してみたときjre(そして..\jre私が思うに)、実行しようとしたときにWindowsから次のエラーメッセージが表示されました「MyProgram.exeは実行を停止しました。」問題の詳細を見ると、APPCRASH と表示され、障害モジュール名は jvm.dll です。

4

3 に答える 3

1

exeの横に「jre」フォルダーを置き、jsmoothのGUIに「jre」(引用符なし)と書くだけです

于 2013-08-01T08:43:10.067 に答える
0

別の方法として、成熟したオープン ソース プロジェクトである NSIS を使用することをお勧めします。JRE をダウンロードしてインストールするインストーラーを作成し、プログラムを実行するためのショートカットを作成できます。

便利なリンクを次に示します。

于 2010-05-14T18:22:20.770 に答える
0

Launch4J ( http://launch4j.sourceforge.net/ ) を試したことがありますか? 最新でより多くの機能を備えていたため、しばらく前に JSmooth からこれに切り替えました。

ただし、jre フォルダーを .exe と同じフォルダーに配置し、そのパスとして jre\ を使用します。ただし、.exe の作業フォルダーがインストール フォルダーであることを確認する必要があります。また、jre フォルダーに完全な JRE があることを確認してください。

于 2010-05-19T16:20:59.630 に答える