En un servidor Windows, tengo 2 tipos de procesos Java
java.exe
javaw.exe
Cuáles son las diferencias ?
java.exe
aparece una ventana de consola. javaw.exe
no.
Si espera salida de texto, deberá usarla java.exe
. Si la aplicación abre su propia ventana (por ejemplo, Eclipse), puede usarla javaw.exe
.
Java es el viejo intérprete de Java que se ejecuta en un cuadro de DOS (por lo que tiene una ventana de consola abierta todo el tiempo).
Javaw es un contenedor alrededor de Java que no abre una ventana de consola (y supongo que redirige stdio, stdout y stderr a NUL)
De: http://www.neuber.com/taskmanager/process/javaw.exe.html
"El comando javaw.exe es idéntico a java.exe, excepto que con javaw.exe no hay una ventana de consola asociada. Esto implica que no puede hacer que muestre la versión con -version, ya que no hay consola para mostrarlo. activado. Utilice javaw.exe cuando no desee que aparezca una ventana de símbolo del sistema. Sin embargo, el iniciador javaw.exe mostrará un cuadro de diálogo con información de error si un inicio falla por alguna razón ".
Espero que esto ayude.
Puede usar javaw para la aplicación GUI, es decir, la aplicación Java swing o cualquier aplicación de escritorio Java o incluso el servicio Java que no necesita ninguna salida de consola. El uso de Java es hacer que la aplicación Java esté en modo sin registro. Ejecutando la aplicación Java con java.exe, si corta la consola, su aplicación se cerrará inmediatamente. Pero para javaw seguirá funcionando. Debes matarlo con el administrador de tareas.
javaw.exe no tiene una ventana de consola asociada (contenedor) a diferencia de java.exe, esa es la diferencia entre ellos.