【发布时间】:2012-11-09 02:59:27
【问题描述】:
java -version的结果转到stderr有什么特殊原因吗?
例如,从 Windows 的提示行执行的这个命令:
java -version > java_version.txt
将文件java_version.txt留空。
编辑:在没有任何参数的情况下执行java.exe 后打印出的帮助也会发生同样的情况。
编辑:出于纯粹的好奇心,我检查了它是否一直都是这样,结果确实如此。 java -version 在 JDK 1.1.8 和 JDK 1.2.2 中转到 stderr,但是在不带任何参数的情况下 java.exe 的输出不会。
【问题讨论】:
-
这几乎是 *NIX 命令的标准。
-
可悲的是,
javac -version这样也很奇怪。解决方法:java -version 2>&1 | egrep 'java|version' --color