Kürzlich habe ich festgestellt, dass einige Anwendungen ausgeführt werden javaw
(nicht in java
). Was ist der Unterschied zwischen ihnen und wie kann ich meine Swing-Anwendung ausführen javaw
?
Kürzlich habe ich festgestellt, dass einige Anwendungen ausgeführt werden javaw
(nicht in java
). Was ist der Unterschied zwischen ihnen und wie kann ich meine Swing-Anwendung ausführen javaw
?
Antworten:
java.exe ist der Befehl, bei dem auf den Abschluss der Anwendung gewartet wird, bis der nächste Befehl ausgeführt wird. javaw.exe ist der Befehl, der nicht auf den Abschluss der Anwendung wartet. Sie können mit anderen Befehlen fortfahren.
.bat
Skripts verwendet werden und wartet. Wenn Sie jedoch Nicht-Konsolenprogramme manuell starten cmd.exe
, cmd.exe
wird der nicht warten und sofort zur Eingabeaufforderung zurückkehren. Versuchen Sie es mit notepad.exe
vsping 8.8.8.8
java.exe
ist die Konsolen-App, während javaw.exe
die Windows-App (konsolenlos) ist. Sie können nicht haben Console
mit javaw.exe
.
java.exe
auf die Konsole zugegriffen werden darf. Das Ausführen eines Applets in einem Browser unter Windows wird beispielsweise immer verwendet, java.exe
auch wenn meine Java-Systemsteuerung so eingestellt ist, dass das Konsolenfenster ausgeblendet wird oder sogar kein Konsolenfenster gestartet wird .
Der Unterschied besteht im Subsystem , auf das jede ausführbare Datei abzielt.
java.exe
zielt auf die CONSOLE
Subsystem ab.javaw.exe
zielt auf das WINDOWS
Subsystem ab.Der Befehl javaw.exe ist identisch mit java.exe, außer dass mit javaw.exe kein Konsolenfenster verknüpft ist
javaw
ist keine Konsole verbunden . Das Fenster wird nicht unbedingt erstellt (z. B. wenn Sie von einem vorhandenen Konsolenfenster aus oder vollständig im Hintergrund ausgeführt werden).