我想写一个安装(bash)脚本,其中我需要检查用户是否安装了java 1.8。重定向java和javac输出
最明显的方式做到这一点是调用
javac -version | grep 1.8
,但对于一些奇怪的原因javac的(和java)-version输出不能重定向 - 既不|,>或>> - 中第一种情况,第二种程序没有得到任何输入,第二种和第三种情况下,执行命令后输出文件为空。 我试着在三台不同的机器上检查它,结果每个都是一样的。
这是什么原因? 有没有其他方法可以检查java版本?
你知道吗stdout和stderr是? (也可以考虑编写一个小的Java 1.3程序,它使用反射直接测试JVM提供的工具) –
另外,当java 1.9出来时,你会做什么? –
我并不关心1.9版本,因为那时软件不会被使用。 如果没有Java,'小Java 1.3'程序将无法工作。 – inexxt