Java path..jvm.cfg的错误

时间:2012-01-29 05:10:32

标签: java

有人可以告诉我为什么在尝试运行Java程序时出现以下错误?程序编译成功但无法运行。我已经设置了Java的路径。

C:\JavaServ>javac hello1.java
C:\JavaServ>java hello1
Error: could not open C:\Program Files\Java\jre6\lib\amd64\jvm.cfg

22 个答案:

答案 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)

在将安全补丁推送给我们之后,Java神秘地破坏了我的工作PC,每当您尝试运行Java程序时都会出现此错误。不知何故,Java 7安装的'lib'子目录已经消失了!它可能与同时安装多个Java版本有关。

如果你收到这个错误,基本上有两件事可能是错的:

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,javawjavawsC:\Windows\System32的另一个实例指向jre6并且我的默认位置jre指向了JAVA_HOME,我也遇到了同样的问题这个(C:\ Windows \ System32)位置。即使将jdk 1.8作为我的AdapterView位置,我也遇到了这个问题。 所以要么删除或重命名java,javaw和javaws它会工作。 enter image description here

答案 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发生了一些混乱。下面的方法可能会有所帮助。

  1. 如果在环境路径中添加了Java,则打开命令提示符并键入where java。如果您获得指定了Java路径的目录列表。除了需要Java文件的目录以外,请删除所有其他目录中的Java文件。

  2. 如果您正在读取第二个指针,那么第一个指针可能没有帮助。在运行对话框中输入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 javaSEreinstall到默认位置。

  • 然后将安装的位置复制为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)

Error:could not open jvm.cfg

从其他PC复制并粘贴i386\jvm.cfg将解决此问题。