我已经设置了我的环境变量。窗口7 - 32位
C:\Users\user>java -version
Error: could not open `E:\lib\i386\jvm.cfg'
C:\Users\user>echo %JRE_HOME%
C:\Program Files\Java\jre7\bin
C:\Users\user>echo %PATH%
C:\Program Files\PC Connectivity Solution\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\WIDCOMM\Bluetooth Software\;C:\Program Files\jdk1.6.0_22/bin;C:\Program Files\Java\jre7\bin/bin;C:\Ruby193\bin;C:\Ruby187\bin
C:\Users\user>java -version
Error: could not open `E:\lib\i386\jvm.cfg'
我检查了E:这个位置什么都没有。 我有JRE7和jdk1.6.0_22。
你能帮我解决一下吗?
我尝试使用此解决方案, Not able to properly set up the path of java in Windows 7 , 64 bit 但是,当点击控制面板上的JAVA时,它给我同样的错误信息。 [错误:无法打开`E:\ lib \ i386 \ jvm.cfg']
答案 0 :(得分:4)
安装JRE时,安装程序会在Windows系统目录中编写一个特殊的java.exe
(例如C:/winnt/system32/java.exe)。这个java.exe
将在注册表中查找当前JavaHome的位置。
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\CurrentVersion] (64 bits or 32 bits only)
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment\CurrentVersion] (32 bits installed on OS 64 bits)
然后获取标记为current的版本的JRE路径。
对于Windows 64位安装上安装的32位JRE:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment\CurrentVersion] --> 1.8
然后
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment\1.8\JavaHome] --> C:\Program Files (x86)\Java\jre1.8.0_31
因此,请验证注册表中的值并清理PATH,因为只需键入java.exe
,就不需要它从命令提示符启动java.exe
。
如果您的设置正确,您将能够覆盖默认JRE而无需修改PATH:
> java -version:"1.6" MyClass (force the jre 1.6 installed to be used)
安装在“Program Files”中的JRE不使用JAVA_HOME
和JRE_HOME
环境变量,它们由IDE,工具或应用程序服务器按惯例使用。
答案 1 :(得分:0)
为什么你有一个jdk 1.6和一个Jre 7?你的Java环境变量设置错误。 jdk和jre路径在bin之前有一个反斜杠。你的jre有\bin\bin
编辑我在这里指的是你的路径变量 请使用jdk 1.7或jdk 1.6。这个选择取决于你们正在做的发展。并且jdk包含一个Jre。所以你不需要同时下载它们。
如果您对手动设置路径没有信心,也可以随时运行安装程序。安装程序会为您执行所有必需的步骤。
答案 2 :(得分:0)
输入
echo%PATH%
并检查您的java.exe被调用的位置。旧的Java安装可以覆盖路径。
答案 3 :(得分:0)
使用安装程序下载在Windows 7上安装Java时,默认情况下会在C:\ Windows \ System32中安装java.exe的副本,并在C:\ ProgramData \ Oracle \ Java中创建指向java.exe的链接\ javapath添加到Path环境变量中。当您运行“java -version”时,询问调用哪个java可执行文件以及它位于何处是有用的?通过从System32文件夹和个人路径中的其他位置以及可能还安装它们的系统路径重命名或删除冲突的Java可执行文件,可以简化并解决您的问题。