Windows中的JRE安装目录
是否有任何命令检查活动(因为机器可以安装多个JRE)JRE安装目录在Windows下。 对于linux,相应的命令是
which java
有没有Windows等价?
where java
为我工作列出所有java exe但java -verbose
告诉你使用了哪个rt.jar
,因此jre(完整路径):
[Opened C:\Program Files\Java\jre6\lib\rt.jar] ...
编辑:win7和java:
java version "1.6.0_20" Java(TM) SE Runtime Environment (build 1.6.0_20-b02) Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)
不作为命令,但此信息在注册表中:
- 打开密钥
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment
- 阅读
CurrentVersion
REG_SZ - 在使用
CurrentVersion
值命名的Java Runtime Environment
下打开子项 - 阅读
JavaHome
REG_SZ以获取路径
例如,我的工作站上有
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment CurrentVersion = "1.6" HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.5 JavaHome = "C:\Program Files\Java\jre1.5.0_20" HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.6 JavaHome = "C:\Program Files\Java\jre6"
所以我当前的JRE在C:\Program Files\Java\jre6
继我的其他评论之后,这是一个批处理文件,它根据注册表值显示当前的JRE或JDK。
它与安装java的实例中的其他解决方案不同,但不在PATH
。
@ECHO off SET KIT=JavaSoft\Java Runtime Environment call:ReadRegValue VER "HKLM\Software\%KIT%" "CurrentVersion" IF "%VER%" NEQ "" GOTO FoundJRE SET KIT=Wow6432Node\JavaSoft\Java Runtime Environment call:ReadRegValue VER "HKLM\Software\%KIT%" "CurrentVersion" IF "%VER%" NEQ "" GOTO FoundJRE SET KIT=JavaSoft\Java Development Kit call:ReadRegValue VER "HKLM\Software\%KIT%" "CurrentVersion" IF "%VER%" NEQ "" GOTO FoundJRE SET KIT=Wow6432Node\JavaSoft\Java Development Kit call:ReadRegValue VER "HKLM\Software\%KIT%" "CurrentVersion" IF "%VER%" NEQ "" GOTO FoundJRE ECHO Failed to find Java GOTO :EOF :FoundJRE call:ReadRegValue JAVAPATH "HKLM\Software\%KIT%\%VER%" "JavaHome" ECHO %JAVAPATH% GOTO :EOF :ReadRegValue SET key=%2% SET name=%3% SET "%~1=" SET reg=reg IF DEFINED ProgramFiles(x86) ( IF EXIST %WINDIR%\sysnative\reg.exe SET reg=%WINDIR%\sysnative\reg.exe ) FOR /F "usebackq tokens=3* skip=1" %%A IN (`%reg% QUERY %key% /v %name% 2^>NUL`) DO SET "%~1=%%A %%B" GOTO :EOF
在这里查看我之前的问题的答案
c:\> for %i in (java.exe) do @echo. %~$PATH:i C:\WINDOWS\system32\java.exe
在命令行中,您可以键入java -version