Произошла ошибка при инициализации ВМ - PullRequest
13 голосов
/ 25 марта 2010

Я получаю следующую ошибку при запуске исполняемого файла, созданного на 64-разрядной машине с использованием кода C ++:

"Произошла ошибка при инициализации ВМ Невозможно загрузить собственную библиотеку: не удается найти зависимые библиотеки "

Мой PATH (показанный ниже), очевидно, указывает на jvm.dll, поскольку у меня есть этот файл в C: \ Progra ~ 1 \ Java \ jdk1.6.0_17 \ jre \ bin и C: \ Windows \ System32

PATH = C: \ Program Files (x86) \ Gmake \ bin; C: \ Program Files (x86) \ apache-ant-1.7.1 \ bin; C: \ Progra ~ 1 \ Java \ jdk1.6.0_17 \ bin; C: \ Program Files (x86) \ Microsoft Visual Studio 8 \ Common7 \ Tools; C: \ Progra ~ 1 \ Java \ jdk1.6.0_17 \ jre \ bin \ server; C: \ Progra ~ 1 \ Java \ jdk1.6.0_17 \ JRE \ Bin; C: \ Windows \ System32

У кого-нибудь есть идеи относительно того, что может вызвать эту ошибку? Спасибо.

Ответы [ 5 ]

5 голосов
/ 25 марта 2010

Используйте обходчик зависимостей , чтобы выяснить, что отсутствует DLL.

4 голосов
/ 21 ноября 2013

У меня такая же проблема при запуске java.exe в моей версии Windows2008 R2.

мой путь был

PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32
\WindowsPowerShell\v1.0\;C:\Program Files\System Center Operations Manager 2007\
;C:\Java\jdk1.6.0_33\bin

, когда я запускаю java.exe в C: \ Java \ jdk1.6.0_33 \ bin, он работает нормально. Я обнаружил, что в c: \ Windows \ System32 \ поставляется с копией java.exe. Когда я запускаю c: \ Windows \ System32 \ java.exe, он показывает ту же ошибку:

C:\>Windows\System32\java.exe
Error occurred during initialization of VM
Unable to load native library: Can't find dependent libraries

Я исправил эту проблему, переместив C: \ Java \ jdk1.6.0_33 \ bin в начало среды PATH:

PATH=C:\Java\jdk1.6.0_33\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\
Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\System Center
Operations Manager 2007\

Надеюсь, эта помощь.

2 голосов
/ 27 марта 2012

Вот как я решил похожую проблему:

  • Использовал JavaRa: http://singularlabs.com/software/javara/ для удаления старых версий Java.
  • Перезагрузил компьютер.
  • Переустановил последнюю версию JDK.
1 голос
/ 11 мая 2017

В моем случае файл jvm.dll находился в той же папке, что и мой exe-файл. Я просто удалил jvm.dll оттуда, и это сработало. Вероятно, это предшествовало тому в ПУТИ

1 голос
/ 11 августа 2016

Я получил эту ошибку, поскольку мой PATH (переменная окружения) установлен неправильно.

  1. при установке переменной PATH, установите путь к jvm.dll как самый первый путь в списке
  2. Перезагрузите компьютер.

Примечание. Не перемещайте jvm.dll в каталог проекта.

...