java.exeとjavaw.exeの違いは何ですか?



What Is Difference Between Java



java.exeは、クラスファイルを実行する、つまりクラスファイルを実行するために使用されます。

そして、javaw.exeは何に使用されますか?私を参照してください:



http://blog.csdn.net/ideality_hunter/article/details/51376006




------ javawとjavaの違い、他の人の説明:

http://blog.csdn.net/u010890857/article/details/45753833





最良の説明:

http://blog.csdn.net/cuser_online/article/details/6219482



- - - 総括する

1Eclipseはjava.exeの代わりにjavaw.exeを使用します



2EclipseでTomcatを起動する理由は、プロセスに追加のjavaw.exeが含まれるためです。



3java.exeがプログラムを実行した後、cmdコンソールはブロック状態になります。 cmdコンソールは他のコマンドを入力できません 、およびjavaw.exeを使用してjavaプログラムを実行すると、コンソールは他のコマンドを入力することもできます。

したがって、javaw.exeは通常、グラフィカルインターフェイス(GUI)でクラスファイルを実行するために使用されますが、java.exeはコンソールに出力する必要のあるクラスファイルを実行します。


5java.exeにはコンソールまたはcmdが必要ですが、javaw.exeにはコンソールまたはcmdは必要ありません。したがって、Tomcatを開始するのはjava.exeであり、EclipseでTomcatを開始するのはjaw.exeを使用することです。

プログラマーが作成したコードがsystem.out.println( 'XXX')を呼び出す場合は、コンソールまたはcmd出力が必要になるため、tomcatを起動してjava.exeを使用するだけです。また、javaw.exeはコンソール(cmd)を呼び出さないため、javaw.exeはsystem.out.println( 'XXX')をコンソールに出力しません。


EclipseからTomcatを起動するには、javaw.exeを使用します。つまり、Eclipseには独自のコンソールがあり、出力のためにWindowsコンソールをポップアップする必要がないため、コンソールに出力する必要はありません。





---------------------------- java.exeとjavaw.exeの違いを1つの文に要約します。

実際には2つの間に違いはなく、1つだけ違いがあります。

1 java.exeをダブルクリックするとコンソールがポップアップし、javaw.exeをダブルクリックしても何もポップアップしません。

これは、java.exeがSystem.console()を呼び出すため、関数は現在のコンソールを取得するためです。コンソールが開かれていない場合(Eclipseでクラスを実行している場合、システムDOSコンソールをポップアップする代わりにEclipseコンソールを使用するなど)、エラーが報告されます。ただし、cmdでは、java.exeを使用してコマンドを実行してもエラーは報告されません。

といった:

https://www.oschina.net/question/271613_50458




- - - - - - - -手短に:

java.exeとjavaw.exeの間に違いはなく、どちらもクラスファイルの実行に使用されます。1つのポイントのみです。

java.exeはDOSコンソールを開く必要があります。

javaw.exeはDOSコンソールを開く必要はありません。


------------最後に理解すると、次のようになりました。次のことを理解すると、javaw.exeが何であるかが本当にわかります。

-----------質問、javaw.exeはSystem.out.println( 'XXX')をコンソールに出力できないため、Eclipseがjavaw.exeを使用できるのにSystem.outを使用できるのはなぜですか。 println( 'XXX')をEclipse自体のコンソールに出力します。

以下は私と同じ質問です:


答えはここにあります:

Eclipseはjavaw.exeを深く使用してから、System.out.println( 'XXX')の出力を取得し、それをEclipseの一時ファイルに書き込んでから、Eclipseのコンソールに移動する必要があります。 System.out.println( 'XXX')の内容がEclipse自身の制御に出力されないように、この一時ファイルを読み取ります。それでおしまい。


私が個人的にテストしたところ、javaw.exeを使用しても、System.out.println( 'XXX')は出力できませんが、コンソールには出力されません。実際、それは出力されます。 txtファイルへの書き込みなど、多くの出力方法があります。待つ。