Разница между java.exe и javaw.exe


143

Недавно я заметил, что некоторые приложения работают javaw(не в java). В чем разница между ними и как мне запустить приложение Swing javaw?


1
Подобный вопрос и хороший ответ здесь: stackoverflow.com/a/8194750/99717 . Обратите внимание, что вопрос здесь также касается javaws.exe, поэтому технически не является дубликатом ...
Hawkeye Parker

Ответы:


75

java.exe - это команда, которая ожидает завершения работы приложения до следующей команды. javaw.exe - это команда, которая не будет ждать завершения приложения. Вы можете пойти дальше с другими командами.


2
javaw.exe также не отображает консольный вывод youtube.com/watch?v=AQUAyJYwJ6Q 0:57 i.imgur.com/TGsm45f.png
barlop

1
Этот ответ неверен. javaw.exe действительно ожидает завершения программы. .batНапример, его можно безопасно использовать как часть сценария, и он будет ждать. Однако, когда вы вручную запускаете не консольные программы cmd.exe, cmd.exeони не будут ждать и сразу же возвращаются в командную строку. Попробуйте это с notepad.exevsping 8.8.8.8
Codeguard

115

java.exeявляется консольным приложением, в то время как javaw.exeявляется приложением для Windows (без консоли). Вы не можете иметьConsole с javaw.exe.


4
Я добавлю, что «консольное приложение» здесь не обязательно означает, что «это было запущено из консоли», только то, что java.exeразрешено получать доступ к его консоли. Например, java.exeпри запуске апплета из браузера в Windows всегда используется, даже если моя панель управления Java настроена на « Скрыть окно консоли» или даже « Не запускать окно консоли» .
Ti Strga

Следующий ответ кажется мне лучше и содержит ссылки на документацию по Java: stackoverflow.com/a/8194750/99717
Hawkeye Parker


13

Команда javaw.exe идентична команде java.exe, за исключением того, что с javaw.exe нет связанного окна консоли


6
Технически правильнее: с javawне связана консоль . Окно не обязательно создается (например, при запуске из существующего окна консоли или полностью в фоновом режиме).
Джои
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.