Ошибка при проверке версии Java: не удалось найти java.dll
зачем я это получаю? Как я могу это исправить?
C:\Users\ash>java version
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.7.0_01', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
Ответы
Ответ 1
Переустановите JDK и установите системную переменную JAVA_HOME на свой JDK. (например, C:\tools\jdk7)
И добавьте переменную JAVA_HOME в вашу системную переменную PATH
Введите в командной строке
echo %JAVA_HOME%
а также
java -version
Чтобы проверить, была ли ваша установка выполнена успешно.
Ответ 2
Принятое решение для переустановки ВСЕХ JDK было немного жестким.
Я тоже испытал эту проблему, и вот мои 2 цента:
Эта проблема возникла с тех пор, как я установил JDK 8 и все еще был установлен JDK 6. Мне нужны разные проекты, над которыми я работаю.
Я заметил, что у меня были как Пользователь, так и система %JAVA_HOME%
, поэтому я удалил переменную User %JAVA_HOME%
и оставил только системный.
Я также заметил, что в моей установке Oracle были некоторые исполняемые файлы Java, и я считаю, что те, в которых конфликтуют, поскольку мои установки Oracle и Java были в моей переменной %PATH%
.
Я удалил все пути Java из моей переменной %PATH%
и оставил только %JAVA_HOME%\bin
в начале переменной, чтобы избежать конфликтов с установкой Oracle.
Ответ 3
У меня была аналогичная проблема после установки java 1.8.
Чтобы исправить это, перейдите в настройку Advance System → path и удалите
C:\ProgramData\Oracle\Java\javapath;
Ответ 4
Удаление
C:\ProgramData\Oracle\Java\javapath;
работать как шарм
Ответ 5
Убедитесь, что переменная JDK Path
направлена в папку \bin
и находится в верхней части списка.
Если есть какая-либо другая запись с файлом с именем java (например, C:\ProgramData\Oracle\Java\javapath
), она выполнит команду для этого файла вместо файла java в вашем JDK. Нет необходимости переустанавливать весь JDK, если ваши файлы по какой-либо причине не повреждены или повреждены.
Ответ 6
У меня была похожая проблема после установки Java 10.0
Чтобы это исправить, перейдите в настройки системы Advance → path и удалите
C:\ProgramData\Oracle\Java\javapath;
Ответ 7
Мне пришлось удалить javapath Common Files из "Пути", который конфликтовал, чтобы заставить его работать. Теперь, к счастью, Java -version работает просто отлично.
C:\Program Files (x86)\Common Files\Oracle\Java\javapath
Ответ 8
Вы можете использовать 32-разрядную версию java в 64-битной среде.
Экспорт формы куста реестра HKLM\Software\JavaSoft и импорт в HKLM\Software\Wow6432Node\JavaSoft. Для 1.6 мне нужны только значения JavaHome и RuntimeLib.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft\Java Runtime Environment]
"CurrentVersion"="1.6"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft\Java Runtime Environment\1.6]
"JavaHome"="C:\\Java\\jre"
"RuntimeLib"="C:\\Java\\jre\\bin\\client\\jvm.dll"
Ответ 9
Я редактировал мой путь, чтобы поместить Oracle JDK в начало пути и исправил его.
Ответ 10
Проблема: у нас была такая же проблема на нашем сервере Windows 2012. Мы использовали системную переменную среды JAVA_HOME, и в PATH мы использовали такие настройки:...% JAVA_HOME%/bin;... и никаких других настроек, связанных с java, в PATH не было.
Проблема заключалась в том, что у нас был пробел в конце значения переменной JAVA_HOME. Например, "C:\Program Files\Java\Jdk 1.8.0_172", поэтому% JAVA_HOME%/bin означает "C:\Program Files\Java\Jdk 1.8.0_172\bin". Поэтому, поскольку значение было разделено по пробелам, и система пыталась найти java.exe в C:\Program Files\Java\Jdk 1.8.0_172, где его, очевидно, нет.
Решение было: удалите пробел из конца значения JAVA_HOME!
Ответ 11
Я удалил "C:\Program Files (x86)\Heroku\bin" из переменной PATH, и проблема исчезла. Я думаю, что, вероятно, Heroku требует другую версию Java. Поэтому проверьте все каталоги в вашей переменной PATH, удалите возможные из них, возможно, возникли проблемы.
Ответ 12
Если вы столкнулись с этой ошибкой в cmd с другой ошибкой "Не удалось найти среду выполнения" после выполнения всех настроек в переменной среды. Затем вам просто нужно запустить jre.exe в папке jdk, переустановить его, а затем перепроверить его командой java -version. Надеюсь, это поможет вам.
Ответ 13
- переименуйте файл
"C:\Windows\System32\java.exe" to "C:\Windows\System32\java_old.exe"
- CMD →
java -version
сделанный.
Ответ 14
- Удалить Java с компьютера
- Проверьте, что папка Java удалена из Program Files
- Проверьте реестр не имеет ни одного экземпляра Java
- Откройте системные переменные и удалите ТОЛЬКО путь Java из PATH
- Теперь установите новую версию снова.
- Установите путь в системных переменных.
Этот процесс очищает все следы Java, а затем установить свежую Java.
Примечание. Эта проблема возникает, когда выполняется многократная установка и удаление.
Ответ 15
Эта проблема обычно возникает в Windows, когда запись реестра "Java Runtime Environment" отсутствует или не соответствует установленному JDK. Несоответствие может быть связано с несколькими JDK.
Шаги для решения:
-
Откройте окно "Выполнить":
Нажмите windows + R
-
Открыть окно реестра:
Наберите "regedit" и введите.
-
Перейдите по адресу:\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\
-
Если среда выполнения Java отсутствует в JavaSoft, создайте новый ключ и дайте имя среде выполнения Java.
-
Для среды выполнения Java создайте строковый ключ "CurrenVersion" и укажите в качестве значения соответствующую версию:
![JRE regedit entry]()
-
Создайте новый подраздел 1.8.
-
Для 1.8 создайте строковый ключ с именем JavaHome со значением JRE home:
![JRE regedit entry 2]()
Ссылка: https://mybindirectory.blogspot.com/2019/05/error-could-not-find-javadll.html
Ответ 16
В моем случае информация о regedit была правильной, и проблема была решена с помощью следующих действий:
1) установить JAVA_HOME в jdk - установить JAVA_HOME = C:\Program Files\Java\\bin 2) установить PATH в jre - установить PATH = "C:\Program Files\Java\\bin"