Запуск Java дает "Ошибка: не удалось открыть" C:\Program Files\Java\jre6\lib\amd64\jvm.cfg '"
После нескольких лет работы ОК, я получаю это сообщение при попытке запустить JVM:
Error: could not open `C:\Program Files\Java\jre6\lib\amd64\jvm.cfg'
Я попытался удалить и получил сообщение о том, что DLL отсутствует (неуказано)
Пробовал переустановить, все безрезультатно.
В то же время, когда вы пытаетесь запустить Scala, я получаю:
\Java\jdk1.6.0_25\bin\java.exe was unexpected at this time.
Проверено %JAVA_HOME%
и %path%
- оба OK
Может ли кто-нибудь помочь?
Ответы
Ответ 1
Может быть немного другая причина, но вторая проблема возникает для меня в scala 2.9.0.1 на Win7 (x64), хотя scala -2.9.1.final уже разрешил эту проблему, упомянутую здесь:
\Java\jdk1.6.0_25\bin\java.exe was unexpected at this time.
My %JAVA_HOME%
установлен таким образом: c:\program files
(x86) \Java\jdk...
Обратите внимание на пробел и круглые скобки.
Если вы измените строку 24 в %SCALA_HOME%\bin\scala.bat
на:
if exist "%JAVA_HOME%\bin\java.exe" set _JAVACMD=%JAVA_HOME%\bin\java.exe
к
if exist "%JAVA_HOME%\bin\java.exe" set "_JAVACMD=%JAVA_HOME%\bin\java.exe"
Он отлично работает. Обратите внимание на кавычки вокруг заданных параметров команды, это будет содержать все пробелы и специальные символы (например: пробелы и круглые скобки) в значении переменной.
Надеюсь, это поможет кому-то еще найти ответ.
Ответ 2
Я проверил мои переменные окружения - JAVA_HOME & PATH, и все они ссылаются на C:\java. Так что это немного расстраивало. Через некоторое время я обнаружил, что при установке по умолчанию также копируются java.exe, javaw.exe и javaws.exe в C:\Windows\System32 (т.е. удаление JRE не прошло успешно). Я просто удалил их и вуаля, я вернулся на ходу. Эта досадная ошибка больше не появляется.
Это работает для меня
Итак, если существует, удалите java.exe, javaw.exe и javaws.exe из System32
Ответ 3
введите% JAVA_HOME%\bin в начале PATH.
Ответ 4
У меня была та же проблема: у меня 64-битная Windows, и когда я набрал "java -version" в CMD-Console, я получил такое же сообщение об ошибке.
Попробуйте запустить 64-бит-cmd (C:\Windows\SysWOW64\cmd.exe), и вы увидите, что он работает там;)
Ответ 5
Если это было раньше, значит, PATH
больше не подходит.
Это может произойти, когда PATH
становится слишком длинным и усекается.
Все сообщения (например этот) предлагают обновление PATH
, который вы можете протестировать сначала в отдельном сеансе DOS, установив минимальный путь и посмотрите, работает ли там Java.
Наконец, OP Highland Mark заключает:
Наконец, исправлено удаление java, удаление всех ссылок на него из реестра, а затем повторная установка.
scary;)
Ответ 6
Я думал, что поделюсь тем, как я решил ту же проблему: "Ошибка не удалось открыть lib\amd64\jvm.cfg". Я обнаружил, что время выполнения Java Jre7 отсутствует в папке amd64 в lib. Однако у меня есть 1.7.0_25 JDK, у которого есть jre-папка, а также есть amd64.
Я переместил исходное содержимое папки jre7 в файл резервной копии и скопировал все с 1.7.0_25\jre.
Теперь я больше не получаю эту ошибку и не могу продолжить создание сценария.
Ответ 7
Установка Java 7 на моем рабочем ПК завершилась после того, как патч был выдворен нам, давая эту ошибку при попытке запустить Java-программу. Как-то весь подкаталог "lib" установки Java 7 исчез! Возможно, это связано с установкой как Java 6, так и Java 7 - в каталоге "jre6" все еще есть.
В любом случае я исправил его, удалив как Java 6, так и Java 7 и переустановив только Java 7. Но если файл, на который он жалуется, на самом деле есть, то вы, вероятно, имеете проблему с пути, как описано в некоторых из другие ответы здесь.
Ответ 8
Внезапно одна и та же проблема, от одного дня до другого, затмения сказала
Failed to load the JNI shared library "C:/JDK/bin/client/jvm.dll"`.
после попытки запуска java на консоли
Error: could not open `C:\WINDOWS\jre\lib\amd64\jvm.cfg'
теперь я просто удалил весь каталог
C:\WINDOWS\jre
и все сработало снова... я не знаю, откуда это произошло, я надеюсь, что это был не вирус.
Ответ 9
-
У меня была похожая проблема (при попытке запустить ведомого агента Jenkins в Windows) в Windows 2008R2
, Java 1.7.0_15
-
У меня было две ситуации, которые способствовали возникновению проблемы, и изменение обеих из них устранило ее:
1) Установка Java
по пути unix
-compatible (меняется с c:\Program Files\... to c:\Software\...
); Я не думаю, что это напрямую повлияло на проблему, описанную в этой теме, но я заметил изменение;
2) Запуск Java
не через ярлык. Первоначально он не удался с ярлыком, но re-running
с прямого исполняемого файла (C:\Software\Java...\bin\java
) работал.
Ответ 10
У меня была та же проблема в Eclipse, и я исправил ее, изменив JRE с 64-битного на 32-разрядный:
Окно > Настройки > Java > Установленные JRE > Добавить... > Далее > Каталог > выберите "C:\Program Files (x86)\Java\jre1.8.0_65" вместо "C:\Program Files\Java\jre1.8.0_60"
Ответ 11
C:\ProgramData\Oracle\Java\javapath работал у меня.., я взял резервную копию файлов и удалил файлы в нем. Открыл новую подсказку cmd, а затем протестировал и работает как charm
Ответ 12
Переустановка java не помогла мне. Но трюк, чтобы поставить переменную JAVA_HOME в начале env-vars. Проблема возникла после обновления с jdk1.7.0_11 до jdk1.7.0_13
Ответ 13
Другим обходным решением является использование shortpath в windows:
- открыть консоль команд Windows с помощью cmd.exe
- goto
c:\
- введите команду >
dir program* /x
- он должен отображаться как короткий путь, например:
PROGRA~2
- поэтому
C:\PROGRA~2
совпадает с C:\Program Files (x86)
- в
JAVA_HOME
заменить путь на:
C:\PROGRA~2\Java\jre7
Это должно работать в среде Windows 64, поскольку она работала для меня в 64-разрядной версии win7.
Ответ 14
Я изменил путь установки java от c:\Program Files (x86)\java
к другой папке, такой как c:\java\jdk1.7
, и обновил значения %Java_HOME%
и пути, соответственно, он работал.
Пример
%JAVA_HOME% = C:\java\JDK1.7
path-C:\java\JDK1.7\bin;
Ответ 15
У меня возникла проблема после обновления java. Лучший способ решить эту проблему - просто перейти в папку c:/ProgramFiles/Java
. Там вы найдете две папки jre: одна версия jre.your и другая с точно такой же папкой jdk. Попробуйте удалить папку версии jre.1.your. Там вы решаете свою проблему. Надеюсь, это поможет. Это сработало для меня.
Ответ 16
Обычно это связано с обновлением JRE.
Он меняет символические ссылки на C:\ProgramData\Oracle\Java\javapath\
Intall JDK - это исправит это.
Ответ 17
Error: could not open 'C:\Program Files\Java\jre6\lib\amd64\jvm.cfg'
Глядя @it, проблема сценария постустановки уже есть и распространяется, так как я использую обновление jdk8 1.8.0_191, поскольку проблема возникла у меня после установки обновления java и произошла автоматически.
Error: could not open 'C:\Program Files\Java\jre1.8.0_191\lib\amd64\jvm.cfg'
Это никогда не закончится в этом случае, и вам нужно будет сделать обходной путь, например, изменить путь вручную.
Ответ 18
У меня было немного другое решение этой проблемы. мой PATH и JAVA_HOME указывали на JDK12 в
C:\Program Files\Java
но выполнение команды:
Java -version
дал ошибку:
Error: could not open 'C:\ProgramFiles\Java\jre1.8.0_212\lib\amd64\jvm.cfg'
Мне пришлось удалить папку с исполняемыми файлами (Java.exe, javaw.exe и т.д.) в другом каталоге, чем System32, как предлагали другие ответы здесь и посты в блоге. Вместо этого я обнаружил, что проблема заключается в исполняемых файлах, найденных в:
C:\Program Files\Common Files\Oracle
так как в
ничего не было связано с Java
C:\Windows\System32
Если у вас возникла эта проблема, а в System32 ничего нет, проверьте каталог "общие файлы", упомянутый выше, на наличие каталога оракула и удалите его.
После этого ваши ссылки PATH должны работать нормально!
Ответ 19
Это не было на пути. Наконец, исправлено удаление java, удаление всех ссылок на него из реестра, а затем повторная установка. Никто не мудрее, но снова работает. Спасибо всем @Highland Mark. Можете ли вы рассказать мне процесс удаления ссылок из реестра. Я пробовал все возможные способы упоминания здесь людей, ничего не работало.