0

ダミーの jar があります。その唯一の仕事は、単純な jdialog を表示し、提供されたコンボから必要なメモリ サイズを選択するようにユーザーに依頼することです。必要な最大メモリ サイズを選択した後、ユーザーは [開始] ボタンをクリックしてメインの Jar を実行します。

メイン jar を呼び出すために、ダミー jar で runtime.getRuntime.exec() メソッドを使用しています。

メイン jar のパスをハードコーディングして正常に動作していますが、2 つの jar が別の場所にある場合にメイン jar の場所をプログラムで取得する方法を知りたいですか??

以下のリンクで使用されているアプローチを使用して、ダミー jar のパスを取得できます。

実行中の JAR ファイルのパスを取得するには?

しかし、私のメインプログラムのjarパスを取得するようにアドバイスしてください..

4

1 に答える 1

1

それらがどこにインストール/展開されるかを知らない限り、できません。両方を同じ JAR にパッケージ化すると、説明した手法を使用して JAR パスを見つけることができます。

メソッドを持つ 2 つのクラスmain()、たとえばorg.kittu.Mainとが必要org.kittu.Dummyです。それらをパッケージ化し、(マニフェストで) デフォルトで実行されるクラスであるmain.jarことを確認します。org.kittu.Dummy

Dummyクラスで、ユーザーが必要とするメモリの場所と量を取得し、次main.jarexec()ようにします。

java -Xmx <memory> -jar <path to main.jar> org.kittu.Main

Mainあなたのクラスを実行します。

于 2012-07-18T18:09:19.330 に答える