「java.exe」と「javaw.exe」の違い
スポンサーリンク
予備知識
| 用語 | 意味 |
|---|---|
| プログラミング言語 | プログラムの元ネタ(ソースコード)を書くときに使う言葉 |
| Java | 「一度書けば、どこでも動く」の理念で作られたプログラミング言語で「オブジェクト指向」という言葉を流行らせたやつ |
| Javaアプリケーション | 普通にパソコンの上で動くJavaのプログラム |
| 実行ファイル | プログラムなファイル |
| コマンドプロンプト | コンピュータに詳しい人がよく使う、Windowsにくっついている黒い画面 |
それぞれの用語の意味
| 用語 | 意味 |
|---|---|
| java.exe | 実行画面を表示してJavaアプリケーションを動かすときに使う実行ファイル |
| javaw.exe | 実行画面を表示しないでJavaアプリケーションを動かすときに使う実行ファイル |
似ているところ
どちらもJavaのプログラムを動かすときに使う実行ファイルです。
違うところ
プログラムを動かしている実行画面が表示されるかどうかが違います。
コマンドプロンプト(Windowsにくっついている黒い画面)上でjava.exeを使って
start java -classpath C:\test test01
のようなコマンドを実行すると、一瞬だけ実行画面が表示されるはずです。
これは
1.黒い画面が表示される
2.プログラムが実行される
3.黒い画面が消える
の一連の流れがパパッと手早く行われるためです。
それに対して、javaw.exeを使って
start javaw -classpath C:\test test01
のようなコマンドを実行すると、実行画面が表示されません。
これは、先程の「1.」「3.」の手順が無くなって
2.プログラムが実行される
だけが実行されるためです。
個人的な使い分け
作ったプログラムの動作確認は、java.exeを使って
java -classpath C:\test test01
のような形で実行することが多いです。
「javaw.exe」を使うのは、プログラム内部からJavaアプリケーションを呼び出すときですね。
……と言いつつ、私は、仕事などで実際に「javaw.exe」を使ったことがありません。






