Recentemente, observei que alguns aplicativos estão sendo executados javaw(não dentro java). Qual é a diferença entre eles e como posso executar o meu aplicativo Swing on javaw?
Pergunta semelhante e boa resposta aqui: stackoverflow.com/a/8194750/99717 . Note-se que a questão há também pergunta sobre javaws.exe, por isso não é tecnicamente uma duplicata ...
Hawkeye Parker
Respostas:
75
java.exe é o comando em que aguarda a conclusão da aplicação até que seja necessário o próximo comando. javaw.exe é o comando que não aguardará a conclusão do aplicativo. você pode prosseguir com outros comandos.
Esta resposta está incorreta. javaw.exe não esperar até que os concluída programa. Ele pode ser usado com segurança como parte do .batscript, por exemplo, e aguardará. No entanto, quando você inicia manualmente programas que não são do console cmd.exe, o cmd.exeservidor não espera e retorna ao prompt de comando imediatamente. Tente com notepad.exevsping 8.8.8.8
Codeguard
115
java.exeé o aplicativo de console e o aplicativo do javaw.exeWindows (sem console). Você não pode ter Consolecom javaw.exe.
Acrescentarei que "o aplicativo do console" aqui não significa necessariamente que "isso foi executado a partir de um console", apenas que java.exeé permitido acessar seu console. A execução de um applet a partir de um navegador no Windows, por exemplo, sempre o utiliza, java.exemesmo que meu Painel de Controle Java esteja definido como Ocultar a janela do console ou mesmo Não iniciar uma janela do console .
Tecnicamente mais correto: com javawnão há console associado . A janela não é necessariamente criada (por exemplo, quando você executa a partir de uma janela de console existente ou completamente em segundo plano).
Respostas:
java.exe é o comando em que aguarda a conclusão da aplicação até que seja necessário o próximo comando. javaw.exe é o comando que não aguardará a conclusão do aplicativo. você pode prosseguir com outros comandos.
fonte
.bat
script, por exemplo, e aguardará. No entanto, quando você inicia manualmente programas que não são do consolecmd.exe
, ocmd.exe
servidor não espera e retorna ao prompt de comando imediatamente. Tente comnotepad.exe
vsping 8.8.8.8
java.exe
é o aplicativo de console e o aplicativo dojavaw.exe
Windows (sem console). Você não pode terConsole
comjavaw.exe
.fonte
java.exe
é permitido acessar seu console. A execução de um applet a partir de um navegador no Windows, por exemplo, sempre o utiliza,java.exe
mesmo que meu Painel de Controle Java esteja definido como Ocultar a janela do console ou mesmo Não iniciar uma janela do console .A diferença está no subsistema que cada executável tem como destino.
java.exe
segmenta oCONSOLE
subsistema.javaw.exe
segmenta oWINDOWS
subsistema.fonte
O comando javaw.exe é idêntico ao java.exe, exceto que com o javaw.exe não há uma janela do console associada
fonte
javaw
não há console associado . A janela não é necessariamente criada (por exemplo, quando você executa a partir de uma janela de console existente ou completamente em segundo plano).