[java] Difference between java.exe and javaw.exe

Recently I noted that some applications are running on javaw (not in java). What is the difference between them and how can I run my Swing application on javaw?

This question is related to java swing javaw

The answer is


The difference is in the subsystem that each executable targets.

  • java.exe targets the CONSOLE subsystem.
  • javaw.exe targets the WINDOWS subsystem.

java.exe is the console app while javaw.exe is windows app (console-less). You can't have Console with javaw.exe.


The javaw.exe command is identical to java.exe, except that with javaw.exe there is no associated console window