4

jar内にパッケージ化したいこのJavaプログラムがあります。正常にコンパイルされ、エラーなしでjarにコンパイルされます。しかし、ダブルクリックしても起動しません。ほとんどのjarアプリケーションがJFrameを使用していて、それが正常に機能することを私は知っています。しかし、コマンドプロンプト/シェルベースにすることは可能ですか?(表示System.out.printlnのように)

例として、jarをダブルクリックしてこのコードを実行することができます。

public class Hello
{

  public static void main( String[] args )
  {
    System.out.println( "Hello, World!" );
  }
}
4

7 に答える 7

10

そんなことは問題ありません。しかし、出力はどこに表示されると思いますか?

コンソールから実行するjava -jar my jar.jarと、「Hello、World」が表示されます。

ダブルクリックする場合は、JFrameを作成する必要があります。

于 2012-04-29T16:11:43.777 に答える
5

jar ファイルのファイル関連付けを変更して、コンソールを開くことができます。(これはWindows用です)

  • コマンド プロセッサを開く
  • タイプftype jarfile
  • 次のようなものが得られます。

jarfile="C:\Path\To\Java\bin\javaw.exe" -jar "%1 %*"

  • 入力しftype jarfile "C:\Path\To\Java\bin\java.exe" -jar "%1" %*ます (これを行うには管理者権限が必要な場合があります)。
于 2012-04-29T16:17:33.647 に答える
2

誰もが話しているコマンドを含む .cmd (または .bat) ファイルを作成するという明らかな解決策について言及している人はいませんjava -jar YourJar.jar。.cmd ファイルをダブルクリックすると、コンソール ウィンドウが開きます。また、プログラムが終了するとすぐに閉じられるため、プログラムは終了する前にキーが押されるのを待つ必要があります。

于 2012-04-29T17:24:22.690 に答える
0

mainメソッド(この例ではHello)を持つクラスの名前を含むマニフェストファイルを含めることで、jarを実行可能にすることができます。ここにあなたがする必要があることを詳述するリンクがあります。

于 2012-04-29T16:11:33.120 に答える
0

もちろん。まず、次のようにプログラムを実行してみてください。

java -cp yourjar.jar Main

ここで、Mainは、メインクラスの完全修飾クラス名です。

これが正常に機能していて、実行可能なjarを作成した場合は、次のようにプログラムを実行してみてください。

java -jar yourjar.jar

これが機能している場合は、JREのインストール時にデフォルトで行われるjar以外の拡張機能をプログラムにマップしない限り、ダブルクリックも機能するはずです。javaw

于 2012-04-29T16:12:10.577 に答える
0

「Hello、world!」を表示したい場合 コマンドラインからコードを実行する必要がある文字列:

   jar -jar your_jar_name.jar
于 2012-04-29T16:12:14.160 に答える
0

出力はコンソールに転送されますが、Eclipse がなければ何もありません! これを回避する唯一の方法は、コマンド プロンプトでプログラムを起動し、プログラムから出力を取得することです。

于 2013-08-17T11:05:00.320 に答える