有人可以告诉我为什么在尝试运行Java程序时出现以下错误?程序编译成功但无法运行。我已经设置了Java的路径。
C:\JavaServ>javac hello1.java
C:\JavaServ>java hello1
Error: could not open C:\Program Files\Java\jre6\lib\amd64\jvm.cfg
答案 0 :(得分:25)
不要以为这是否是正确的方法......(也许正确安装Java是一个永久的解决方案)....但这是一个绝招...... :)
从“c:\ windows”和“c:\ windows \ system32”中删除“java.exe”文件。那应该解决它。
答案 1 :(得分:12)
这应该是JRE的内部文件,一般来说,当你运行/编译java时,你不应该处理它。
Here您可以找到该文件的确切用途的解释。 最重要的是,您的Java安装在某种程度上已损坏,因此作为解决此问题的第一手段,我建议您重新安装jre。
您应该确保为您的架构安装正确的jre。
希望,这有帮助
答案 2 :(得分:5)
如果您遇到此错误,则无法卸载/重新安装JRE。 这就是为什么因为之前的安装已经复制了3个文件,即c:/ windows / system32文件夹中的Java.exe,Javaw.exe,javaws.exe。 只需去那里删除这些文件并从oracle下载一个新版本的jre并安装它。我更喜欢JDK 1.6更新45.这是非常稳定的。
答案 3 :(得分:3)
如果您到达此处并将其向下滚动,则Java的较新Oracle版本x86和x64可能会严重损坏。您可能会发现,在删除所有Java版本之后,甚至手动删除了在c:/ program files /和c:/ program files(x86)/中找到的所有版本,您仍然无法正确运行全新的Java安装。
我在这里告诉您原因以及如何解决。
转到C:\ Program Files \ Common Files \并删除Oracle目录。它在结点(符号链接)内的下面有一个Java版本,与其他所有安装隔离。混蛋。
现在,还要转到“系统属性”->“高级”->“环境变量”,然后在“系统变量”下编辑PATH。找到引用Oracle文件夹的位置,然后将其删除。关闭所有窗口,然后重新启动以确保完全确定。
安装JRE或JDK。打开命令提示符并键入“ java”,如果出现,则表示您很满意。如果不是,请返回PATH变量并添加“ C:\ Program Files(x86)\ Java \ jdk1.8.0_221 \ bin”或适合您计算机的任何内容。
我讨厌甲骨文。
答案 4 :(得分:3)
update registry path to installation location
当我将默认安装从过度拥挤的主分区移出到另一个位置时,发生了这种情况。冷杉
答案 5 :(得分:2)
如果你收到这个错误,基本上有两件事可能是错的:
1)您的Java安装已损坏。如果它抱怨的文件/目录不存在,请卸载并重新安装JRE,然后它应该在那里。这为我修好了。
2)如果文件存在,您的PATH在某种程度上是不正确的或指向旧的/损坏的Java安装。在这种情况下,您需要修复PATH以指向正确的java.exe / javaw.exe,或使用完全限定的路径。所以而不是:
java <whatever>
使用
c:\<full path to correct JRE>\bin\java.exe <whatever>
3)如果你的PATH是正确的并且文件在那里并且它仍然失败,那么路径可能会被截断,因为它太长了。见:Running Java gives "Error: could not open `C:\Program Files\Java\jre6\lib\amd64\jvm.cfg'"。
答案 6 :(得分:1)
程序可以编译但在运行时会导致这样的错误:
无法打开C:\ Program Files \ Java \ jre6 \ lib \ amd64 \ jvm.cfg
表示程序文件中缺少jvm.cfg文件。原因可能是文件损坏或文件可能被删除。再次在“Program Files”文件夹中安装JRE。
与我发生的另一个案例是我安装了32位jdk&amp;程序文件(x86)中我的64位系统中的jre和我的Program Files文件夹是空的。这就是出错的原因。所以我在Program Files文件夹中安装了64位JRE,它开始工作了。请注意,它与jdk版本无关。仅与JRE问题相关联。
答案 7 :(得分:1)
由于java,javaw
中javaws
和C:\Windows\System32
的另一个实例指向jre6
并且我的默认位置jre指向了JAVA_HOME
,我也遇到了同样的问题这个(C:\ Windows \ System32)位置。即使将jdk 1.8作为我的AdapterView
位置,我也遇到了这个问题。
所以要么删除或重命名java,javaw和javaws它会工作。
答案 8 :(得分:0)
已解决
我有类似的问题,我尝试了不同的方法,但是没有任何效果。然后,当我检查已安装的程序时。我可以看到安装了两个版本的Java。
我所做的是,只需卸载所有Java版本并重新安装所需的版本。但这在我签入终端时似乎不起作用。然后,我必须重新打开终端并运行命令,然后它才起作用。
注意:如果要通过终端进行测试,请不要忘记重新打开终端。
答案 9 :(得分:0)
如果您已经在Windows上安装了Java安装程序,并决定通过移动文件夹来向JDK发出一些订单...
在java.exe
中使用Windows\System32
的所有答案都是正确的,但在更困难的情况下-没有文件,但是仍然出现错误消息,然后记住有关 Windows注册表条目(请查看regedit.exe
)。
它们将有关JRE文件夹的信息存储在此注册表项中:
win32:
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment
win64:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment
答案 10 :(得分:0)
升级Java版本后我遇到了同样的问题。我安装了多个jdk。我已经手动卸载了旧的jdk版本。然后它对我有用。
答案 11 :(得分:0)
我在安装201时遇到了这个问题,但它没有正确卸载191。我必须转到Program Files / Java文件夹,重命名旧的201目录,然后安装201的新副本。这样做时,它提示我卸载191,而我这样做。现在一切正常。
答案 12 :(得分:0)
我想在这里添加一些指针。
每当您遇到错误提示Could not open jvm.cfg
时,即表示java installation path
发生了一些混乱。下面的方法可能会有所帮助。
如果在环境路径中添加了Java,则打开命令提示符并键入where java
。如果您获得指定了Java路径的目录列表。除了需要Java文件的目录以外,请删除所有其他目录中的Java文件。
如果您正在读取第二个指针,那么第一个指针可能没有帮助。在运行对话框中输入regedit
,在HKEY_LOCAL_MACHINE
下,转到softwares/javasoft
并重命名Java安装目录的路径。
让我知道以上方法是否可以解决问题。
答案 13 :(得分:0)
如果您安装了多个jdk版本,请卸载其他版本并仅使用一个版本。这对我有用。 https://www.java.com/en/download/help/uninstall_java.xml
答案 14 :(得分:0)
对于任何仍有问题的人,我做了这个,这可能不是最好的解决方案,但它对我有用..
我卸载了当前安装的所有Java,重新安装了最新的Java并将安装目录更改为C:/ Windows / jre(基本上它一直说没有配置文件)
答案 15 :(得分:0)
简单的解决方案只有uninstall
javaSE
和reinstall
到默认位置。
然后将安装的位置复制为C:\Program Files\Java\jdk1.8.0_131\bin
。
然后转到桌面,然后选择右键单击My Pc or This pc shortcut
下选择properties >> Advanced system settings >> under Advance tab >> last option Environment Variables..>>path >> edit >> past >> ;
(如果是win10则不需要)/(如果是Windows 7则需要)
答案 16 :(得分:0)
在我们的系统中,对于运行时目的的“java(jre)”是有用的,所以如果安装任何不同版本的java,可能是已经安装的版本之前的版本。
例如;我的Windows 8.1我有8的运行时java版本,然后当我安装Ver7时它默认采取V8,但我卸载8,在这种情况下,从c:\ windows \ system32删除java.exe使我的java运行时工作
答案 17 :(得分:0)
我在Windows 7上的docear程序遇到了同样的错误。
我发现我的计算机上安装了两个java 1.6实例。一个实例有一个jvm.cfg而另一个实例没有。
修改我的路径以搜索正确的java实例(以粗体显示),首先解决了问题。
以下是我更正后的路径:
C:\用户\ kranjit&GT;路径 PATH = C:\ Windows \ System32下; C:\视窗; C:\ Windows \ System32下\ WBEM; C:\ Windows \ System32下 \ WindowsPowerShell \ v1.0 \; C:\ Program Files(x86)\ Enterprise Vault \ EVClient \; C:\ Program Files \ Java \ jre6 \ bin ; C:\ Program Files(x86) \爪哇\ JRE6 \ BIN;
答案 18 :(得分:-1)
我有同样的问题 - 当我尝试从命令行运行Java程序时出现错误消息:&#34;错误:无法打开jvm.cfg&#34;。 My Path环境变量包含以下路径:
C:\ProgramData\Oracle\Java\javapath
在文件夹中有3个exe文件:
java.exe
javaw.exe
javaws.exe
当我删除条目
时C:\ProgramData\Oracle\Java\javapath
从Path环境变量并重新启动cmd,我可以像往常一样运行程序(java MyProg)。 显然我已经破坏了指向正确java jre安装的路径
C:\Program Files\Java\jre1.8.0_151
答案 19 :(得分:-1)
我遇到了同样的问题。我刚刚卸载了Java并重新安装,之后它运行良好。问题与JRE有关,因此您可以重新安装JRE。
答案 20 :(得分:-1)
这表示找不到此jvm.cfg
文件。也许它被删除了。 Reinstall
该计划。如果游戏中存在此问题,例如游戏文件夹中的reinstall Java
,或者复制Java文件.de c:/Program Files/JAVA
并粘贴到游戏文件夹中的JAVA
文件夹
答案 21 :(得分:-1)