java - 如何从批处理脚本检查 Java 安装?

标签 java batch-file path

我需要编写一个批处理脚本来查看是否安装了 Java,如果安装了,那么在什么路径下? 我觉得它必须是类似这样的东西:

for /f %%j in ("java.exe") do (
   set JAVA_HOME=..........
)

但我想不通。

附言它必须与带两个空格的路径一起使用。就像 java 安装到“程序文件”中一样。

谢谢。

最佳答案

使用 reg[.exe],您可以查询系统上安装的可能的 JRE 候选者。可能没有也可能有几个。

在测试设置中,在命令 shell 中运行:

reg 查询“HKLM\Software\JavaSoft\Java Runtime Environment”

我得到三行结果,其中第一行是 当前版本 REG_SZ 1.6

基于此,查询

reg query "HKLM\Software\JavaSoft\Java Runtime Environment\1.6\"

给我 JavaHome REG_SZ C:\Program Files\Java\jre6

它比扫描文件系统来查找 java 二进制文件要高效得多。

这是在 32 位 Windows XP 的虚拟安装下测试的。

关于java - 如何从批处理脚本检查 Java 安装?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2951804/

相关文章:

java - 输入并比较两个日期

java - Spring Boot部署wildfly不起作用

java - 通过java运行批处理文件(.bat)所需的解决方案

batch-file - 为什么在不将 “call”附加到该行的情况下调用嵌套批处理文件会退出父批处理文件?

batch-file - 使用多个选项卡启动 MobaXterm 的批处理脚本

c# - 在 Windows 中获取 OneDrive 路径

java - 计算所有节点仅被触及一次的节点之间的所有可能路线? (旅行推销员)

java - 对象不支持此方法或属性错误

java - 如何使用selenium查找Excel文件中字符串的位置

javascript - 相对路径不起作用,但绝对路径起作用