'javaw' - Launching Java Programs without Console

This section provides a tutorial example on how to use 'javaw' tool to launch a Java program without the output console window.

If you launch a Java application with "java" in a command window, JVM will use that command window as the console. If you launch a Java application with "java" in a different way, "java" will create new command window and use it as the console.

If you don't want console, you can user "javaw" launch your application. "javaw" works exactly like "java" except that it will not create any console.

Here is what I did to test the "javaw" tool.

1. Compile ShowMemory.java and copy ShowMemory.class to c:\herong.

2. Open a command window and run "java -classpath c:\herong ShowMemory".

3. You should see the program output displayed in the same window. The Windows command prompt is not showing any more. "java" tool is using this window as the console.

4. Open another command window and run "javaw -classpath c:\herong ShowMemory".

5. You should see no program output in the window. The Windows command prompt is showing to take any new commands. But what happens to my program? Is it still running?

6. Run "Task Manager". The Windows Task Manager windows shows up.

7. Go to "Process" tab, you should see two Java processes: "java" and "javaw". This answers my previous question. "javaw" is still running ShowMemory without any console as expected.

Through this tutorial, we should remember that when you use "javaw" to launch an application, no console window will be created and data sent to the standard output stream will not be displayed. So "javaw" is good tool for applications that do not need the console window, like GUI applications and server applications.

Last update: 2015.

Table of Contents

 About This Book

 Java Tools Terminology

 Installing Java 8 on Windows

 'javac' - The Java Program Compiler

'java' - The Java Program Launcher

 'java' - Java Launching Command and Options

 Launching Hello.java - My First Java Program

 Option "-classpath" - Specifying Class Path

 Option '-jar' - Specifying Executable JAR Files

 Option '-X' - Specifying Non-Standard Options

'javaw' - Launching Java Programs without Console

 'jdb' - The Java Debugger

 'jconsole' - Java Monitoring and Management Console

 'jstat' - JVM Statistics Monitoring Tool

 JVM Troubleshooting Tools

 jvisualvm (Java VisualVM) - JVM Visual Tool

 'jar' - The JAR File Tool

 'javap' - The Java Class File Disassembler

 'keytool' - Public Key Certificate Tool

 'native2ascii' - Native-to-ASCII Encoding Converter

 Outdated Tutorials

 References

 PDF Printing Version