java如何知道你是否正在运行javaw.exe与java.exe

rog*_*ack 8 java windows

java代码编程方式查找绝对java.exe路径有关,是否有任何方法可以知道您运行的java进程是作为"java.exe"与"javaw.exe"启动的?

谢谢

Ti *_*rga 9

如果VM没有可用的控制台(例如,因为您使用javaw.exe启动它),则调用System.console()将返回null.

编辑:即

final boolean amRunningJavaW = System.console() == null;
Run Code Online (Sandbox Code Playgroud)

  • 关于 System.console() 返回 null 的原因,如果您的应用程序运行时其标准输出流通过管道输送到另一个程序(例如 more、less)或输出到文件,则 System.console() ` 将返回 `null` (2认同)