我需要知道JDK在我的机器上的位置。
在cmd中运行Java -version时,它显示的版本为'1.6.xx'。 为了找到这个SDK在我的机器上的位置,我尝试使用echo %JAVA_HOME%,但它只显示'JAVA_HOME'(因为在我的环境变量中没有'JAVA_PATH' var设置)。
我需要知道JDK在我的机器上的位置。
在cmd中运行Java -version时,它显示的版本为'1.6.xx'。 为了找到这个SDK在我的机器上的位置,我尝试使用echo %JAVA_HOME%,但它只显示'JAVA_HOME'(因为在我的环境变量中没有'JAVA_PATH' var设置)。
当前回答
在Windows PowerShell中,您可以使用Get-Command功能查看Java安装在哪里:
Get-Command -All java
Or
gcm -All java
-All部分确保显示它在路径查找中出现的所有位置。下面是示例输出。
PS C:> gcm -All java
CommandType Name Version Source
----------- ---- ------- ------
Application java.exe 8.0.202.8 C:\Program Files (x86)\Common Files\Oracle\Java\jav...
Application java.exe 8.0.131... C:\ProgramData\Oracle\Java\javapath\java.exe
其他回答
更多关于Windows…java变量。Home并不总是与运行的二进制文件位于同一位置。
正如Denis The Menace所说,安装程序将Java文件放到Program files中,同时将Java .exe放到System32中。没有Java相关的路径Java -version仍然可以工作。然而,当PeterMmm的程序运行时,它报告程序文件的值为java。home,这没有错(Java安装在那里),但实际运行的二进制文件位于System32。
查找java.exe二进制文件位置的一种方法是,在PeterMmm的代码中添加下面这行代码,以保持程序运行更长时间:
try{Thread.sleep(60000);}catch(Exception e) {}
编译并运行它,然后查找java.exe映像的位置。例如,在Windows 7中打开任务管理器,找到Java .exe条目,右键单击并选择“打开文件位置”,这将打开Java二进制文件的确切位置。在本例中,它是System32。
在windows中,默认值是:C:\Program Files\Java\ jdk1.6.0_14(其中数字可能不同,因为它们是版本)。
在Windows cmd中:
set "JAVA_HOME"
在Windows命令提示符中,只需输入:
set java_home
或者,如果你不喜欢命令环境,你可以检查它:
开始菜单>计算机>系统属性>高级系统属性。然后打开高级选项卡>环境变量,在系统变量中尝试找到JAVA_HOME。
也许上面的方法有用…我试了一些,但不是为了我自己。事情是这样的:
在终端中运行:
/usr/libexec/java_home