已设置JAVA_HOME,但在命令提示符中找不到JAVA-version
[已编辑] 我已将JAVA_HOME变量设置为“C:\Program Files\JAVA\jdk1.8.0_60” 在命令提示符下运行javac-version后,我得到以下结果:已设置JAVA_HOME,但在命令提示符中找不到JAVA-version,java,command-prompt,Java,Command Prompt,[已编辑] 我已将JAVA_HOME变量设置为“C:\Program Files\JAVA\jdk1.8.0_60” 在命令提示符下运行javac-version后,我得到以下结果: javac 1.7.0_07 C:\Users\User\Desktop>java -version Error: Failed reading value of registry key: Software\JavaSoft\Java Runtime Environment\C Error: co
javac 1.7.0_07
C:\Users\User\Desktop>java -version
Error: Failed reading value of registry key:
Software\JavaSoft\Java Runtime Environment\C
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
但是,当我运行java版本时,我得到以下结果:
javac 1.7.0_07
C:\Users\User\Desktop>java -version
Error: Failed reading value of registry key:
Software\JavaSoft\Java Runtime Environment\C
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
为了澄清,我的C:\Program files\Java中有以下文件
(1) jdk1.5.0_14(该文件不能删除,因为系统正在使用它
(2) jdk1.8.0_60
(3) jre1.5.0_14
(4) jre1.8.0_60
我可以知道如何确保所有jre和jdk都指向1.8版本;以及如何消除上述错误吗
我在回显%PATH%时得到此消息:
C:\ProgramData\Oracle\Java\javapath;C:\Users\User\introcs\java\bin;C:\PROGRAM FI
LES\BROADCOM\BROADCOM 802.11 NETWORK ADAPTER;C:\PROGRAM FILES (X86)\NVIDIA CORPO
RATION\PHYSX\COMMON;C:\PROGRAM FILES (X86)\INTEL\ICLS CLIENT\;C:\PROGRAM FILES\I
NTEL\ICLS CLIENT\;C:\WINDOWS\SYSTEM32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\WBEM;C:\WIN
DOWS\SYSTEM32\WINDOWSPOWERSHELL\V1.0\;C:\PROGRAM FILES\INTEL\INTEL(R) MANAGEMENT
ENGINE COMPONENTS\DAL;C:\PROGRAM FILES\INTEL\INTEL(R) MANAGEMENT ENGINE COMPONE
NTS\IPT;C:\PROGRAM FILES (X86)\INTEL\INTEL(R) MANAGEMENT ENGINE COMPONENTS\DAL;C
:\PROGRAM FILES (X86)\INTEL\INTEL(R) MANAGEMENT ENGINE COMPONENTS\IPT;C:\PROGRAM
FILES (X86)\INTEL\OPENCL SDK\2.0\BIN\X86;C:\PROGRAM FILES (X86)\INTEL\OPENCL SD
K\2.0\BIN\X64;C:\PROGRAM FILES\SONY\VAIO IMPROVEMENT;C:\PROGRAM FILES (X86)\SONY
\VAIO BIOS DATA TRANSFER UTILITY\;C:\PROGRAM FILES (X86)\SONY\VAIO STARTUP SETTI
NG TOOL;;C:\WINDOWS\SYSTEM32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\WBEM;C:\WINDOWS\SYST
EM32\WINDOWSPOWERSHELL\V1.0\;C:\Program Files\WIDCOMM\Bluetooth Software\;C:\Pro
gram Files\WIDCOMM\Bluetooth Software\syswow64;C:\Program Files (x86)\Windows Ki
ts\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\110\To
ols\Binn\;c:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementS
tudio\;c:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;c:\Program Fi
les (x86)\Microsoft SQL Server\110\DTS\Binn\;c:\Program Files\Microsoft SQL Serv
er\110\DTS\Binn\;C:\Program Files (x86)\Skype\Phone\;C:\Users\User\introcs\j3d\b
in;C:\Users\User\introcs\bin;C:\Users\User\introcs\java\bin;
设置bin文件夹“C:\Program Files\Java\jdk1.8.0\U 60\bin”的上述路径 对于jre,您可以设置“C:\Program Files\Java\jre1.8.0\U 60\bin” 注:将上述位置置于“路径”系统环境变量中。
希望这会有所帮助。当您在cmd promt上编写javac时,它不是从
JAVA\u HOME
JAVA\u HOME
变量通常用于用JAVA编写的程序,以便轻松查找JVM
您正在搜索的是PATH
。它会扫描路径并绑定可执行文件,这样您就可以在不提供绝对路径的情况下使用它们
当您编写javac时,它将获得由PATH
给出的javac
所以在您的例子中C:\ProgramData\Oracle\Java\javapath;C:\Users\User\introcs\Java\bin;
必须指向错误的路径,我建议删除它们并给出所需版本的路径。还要检查Windows目录(我认为它在Windows/System32中)中的java*.exe并删除它们。它们往往会覆盖手动安装的JVM,从而覆盖添加到JDK或JRE路径中的任何环境设置。
然后,将%JAVA\u HOME%\bin添加到路径中,启动一个新的命令提示符,然后就可以开始了。发布
echo%PATH%
的o/p似乎,PATH
环境变量所指向的JAVA安装已损坏。已在我的帖子的编辑版本中进行了回显和发布。你的意思是将其放在系统环境变量中吗iables“Path”?我刚刚将此额外路径添加到变量“Path”中,但错误持续存在我在windows/system32i中找不到任何java.exe我无法删除oracle文件夹,因为该文件夹正在使用mklink/d C:\ProgramData\oracle\java\javapath“C:\Program Files\Java\jdk1.8.XXX\bin\这将在该路径下创建Java目录的链接