解决这个问题的关键点是:
The javaw command is identical to java , except that with javaw there is no associated console window. Use javaw when you don't want a command prompt window to appear. The javaw launcher will, however, display a dialog box with error information if a launch fails for some reason.
参见http://java.sun.com/javase/6/docs/technotes/tools/windows/java.html。
我们在bat脚本中一般使用类似如下的命令执行一个Java程序:
@java -cp ..;../lib/log4j-1.2.15.jar com.a.b.c.d
或:
@java -jar x.jar
这样话在Java程序启动时,加载的DOS窗口一直出现,直到你关闭了Java程序才一起关闭。如上英文所述。
为了避免这个DOS窗口,需要把.bat中的启动命名修改为:
@start javaw com.a.b.c.d
或:
@start javaw -jar x.jar
即可。