1

私はJavaプログラムを持っています。それがMyApp.jarと呼ばれているとしましょう

Linux で実行するには、myapp.sh という名前のシェル スクリプトを作成します。このスクリプトは実行されjava -jar MyApp.jar、ダブルクリックするだけです。すべてがうまく機能します。

Windows 7 では、javaコマンドが全員のパスにあるとは想定できません (Windows でそう呼んでいる場合)。そのため、回避策を講じて、これを含むバッチ スクリプトを作成する必要があります: "C:\Program Files (x86)\Java\jre6\bin\java.exe" -jar MyApp.jar、これは明らかに悪い解決策...そして、XPまたはVistaでは動作しません。ただし、ほとんどのWindows 7 マシンで動作します。

私のアプリケーションは .zip ファイルとして出荷され、ユーザーはそれをフォルダー MyApp に展開し、理想的には何かをダブルクリックしてプログラムを呼び出します。これまでのところ、Linux ユーザーがダブルクリックするための .sh スクリプトと、Windows 7 ユーザー用のバッチ スクリプトがあります (ほとんどの場合に動作します)。独自のディレクトリ (MyApp) でファイルを作成および使用します。

クロスプラットフォームでこのプログラムを呼び出す最良の方法は何ですか?

ありがとう!

4

3 に答える 3

3

biziclop が述べたように、Java Web Startは一般的に Java デスクトップ アプリのインストール/起動/更新に使用されます。

JREに関する限り、deployJava.js上記のページからリンクされているものを使用して、必要最小限のJREがインストールされていることを確認し、JNLPファイルの要素を使用して、アプリでサポートされているJREマイクロバージョンを指定するだけで通常は十分です.

アプリケーションの起動

JWS は、OS でサポートされている場合、デスクトップ ショートカットとメニュー項目をインストールできます。これらは起動ファイルで指定するか、JNLP API のサービスを使用して実行時に追加/削除できます。

于 2012-08-14T23:34:15.567 に答える
1

アプリケーションで Java を配布できない場合は、JAVA_HOME を使用して Java を開始するのが良い解決策かもしれません。すべてではなく、多くのシステムでオンになっています。絶対に C:\Program Files (x86) を使用しないでください... 環境変数 %ProgramFiles% を使用する方がはるかに優れています

于 2012-08-14T22:07:24.273 に答える
1

Java アプリケーションでは、特定のバージョンの Java ランタイム環境がターゲット システムにインストールされている必要があります。

私の意見では、最も便利な方法は、すべてのライブラリとドキュメントを 1 つのアーカイブとして出荷し、Windows および *nix システム用の起動スクリプトを追加することです。

アプリケーションに JRE を同梱することもできますが、その場合、さまざまなプラットフォームのビルドをサポートする必要があります...

于 2012-08-14T22:02:54.637 に答える