Исправлено: не удалось создать виртуальную машину Java.

Некоторые пользователи сталкиваются с ошибкой «Не удалось создать виртуальную машину Java» при попытке запустить приложение, использующее Java. Сообщается, что эта конкретная проблема возникает с Minecraft и несколькими другими приложениями, построенными на Java.

Не удалось создать виртуальную машину Java.  Ошибка. Произошло фатальное исключение.  Программа будет закрыта.

Что вызывает ошибку "Не удалось создать виртуальную машину Java"?

Мы исследовали эту конкретную проблему, изучив различные отчеты пользователей и стратегии устранения неполадок, которые они использовали для устранения одного и того же сообщения об ошибке. Основываясь на их выводах, существует несколько сценариев, которые могут вызвать данную проблему:

  • Java вызывается из-за неправильных аргументов или опций. Это может произойти, если вы запускаете самодельное приложение или пытаетесь открыть приложение с открытым исходным кодом, которое, как известно, вызывает нестабильность системы.
  • Глобальный максимальный размер кучи Java недостаточно высок. Одна из наиболее частых причин, по которой вы можете столкнуться с этой конкретной ошибкой, - это попытка запустить приложение Java с максимальным размером памяти кучи, превышающим тот, который задан как системная переменная .
  • Исполняемый файл Java и / или приложение требуют прав администратора - это может происходить с приложениями, которым для правильной работы требуется доступ администратора.

Если вы в настоящее время ищете способ устранить ошибку « Не удалось создать виртуальную машину Java» , эта статья предоставит вам несколько проверенных стратегий устранения неполадок. Ниже приведен набор методов, которые другие пользователи в аналогичной ситуации использовали для решения проблемы.

Чтобы обеспечить наилучшие результаты, следуйте приведенным ниже методам в том порядке, в котором они представлены, пока не найдете метод, эффективный для устранения ошибки для вашего конкретного сценария.

Метод 1: добавление _JAVA_OPTIONS в системные переменные

Наиболее затронутым пользователям удалось решить проблему, создав системную переменную для Java с именем _JAVA_OPTIONS и установив для нее значение Xmx512M . По сути, это устанавливает глобальный максимальный размер кучи для Java.

Это устранит любое сообщение об ошибке, возникающее из-за того, что максимальный размер кучи запущенного приложения Java больше, чем тот, который задан как системная переменная. Несколько пользователей, столкнувшихся с той же проблемой, сообщили, что проблема была полностью решена после того, как они выполнили указанные ниже действия.

Вот что вам нужно сделать, чтобы добавить запись _JAVA_OPTION S в системные переменные для увеличения глобального максимального размера кучи:

  1. Нажмите клавишу Windows + R, чтобы открыть диалоговое окно « Выполнить ». Затем введите « sysdm.cpl » и нажмите Enter, чтобы открыть экран « Свойства системы» .
  2. На экране « Свойства системы» перейдите на вкладку « Дополнительно » и нажмите « Переменные среды».
  3. В окне « Переменные среды» нажмите « Создать» (в разделе « Системные переменные» ).
  4. В окне « Новая системная переменная» установите для имени переменной значение _JAVA_OPTIONS и значение переменной - Xmx512M и нажмите « ОК», чтобы сохранить изменения.
  5. Закройте ранее открытые окна и перезагрузите компьютер, чтобы изменения вступили в силу.
  6. При следующем запуске откройте приложение, которое ранее показывало ошибку « Не удалось создать виртуальную машину Java», и посмотрите, правильно ли работает.
Создание системной переменной с именем _JAVA_OPTIONS и присвоение ей значения Xmx512M

Если вы все еще видите то же сообщение об ошибке в начале приложения, попробуйте добавить путь Java Bin, который может быть похож на «% \ USER PATH \ Java \ jdk1.6.0_39 \ bin», к переменной среды, как указано в описанный выше метод и посмотрите, работает ли он.

Метод 2: открытие java.exe с правами администратора

Нескольким пользователям, пытающимся решить одну и ту же проблему, удалось решить проблему после принудительного открытия основного исполняемого файла Java (java.exe) с правами администратора.

Некоторые пользователи сообщили, что им удалось решить проблему после применения этого исправления как к основному исполняемому файлу Java, так и к исполняемому файлу приложения, в котором отображается сообщение об ошибке.

Вот краткое руководство по всему этому:

  1. Откройте проводник и перейдите к месту установки Java. Нам нужно будет добраться до места расположения основного исполняемого файла Java ( java.exe ). По умолчанию вы должны найти его в Program Files / Java / * JRE build version * / bin. Точное расположение будет отличаться в зависимости от того, какую среду выполнения Java вы используете.Перейдите к местоположению java.exe

    Примечание. Если вы установили Java в произвольном месте, перейдите в это место.

  2. Щелкните правой кнопкой мыши java.exe и выберите « Свойства» . Затем перейдите на вкладку « Совместимость » и установите флажок « Запускать эту программу от имени администратора» (в разделе «Настройки»). Нажмите Применить, чтобы сохранить изменения.перейдите на вкладку «Совместимость» и включите «Запускать эту программу от имени администратора».
  3. Щелкните правой кнопкой мыши исполняемый файл приложения (тот, который вызывает ошибку) и повторите ту же процедуру: Совместимость> Запустить эту программу от имени администратора> Применить .
  4. Запустите приложение и посмотрите, исчезнет ли сообщение об ошибке.

Метод 3: переустановка Java

В некоторых случаях ошибка возникает из-за того, что Java могла быть установлена ​​неправильно или ее установка могла быть повреждена с течением времени. Следовательно, на этом этапе мы переустановим Java после ее полного удаления. Для этого:

  1. Нажмите клавишу Windows + R, чтобы открыть окно «Выполнить», и введите «Appwiz.cpl».
  2. Нажмите «Enter», и откроется экран «Программы и компоненты».
  3. На экране « Программы и компоненты» прокрутите список установленных приложений, пока не найдете Java.
  4. Щелкните его правой кнопкой мыши и выберите «Удалить», чтобы полностью удалить его из системы.
  5. Сначала удалите основную установку Java, а позже вы также должны удалить все другие установки Java, такие как обновления и другие версии.
  6. После удаления всей установки перезагрузите компьютер.
  7. После загрузки перейдите по этой ссылке и загрузите последнюю версию JRE.
  8. Проверьте, сохраняется ли проблема.
  9. Если ошибка не исчезла, загрузите и установите последнюю версию JDK отсюда.

    Примечание. Если вы уже используете JDK, попробуйте изменить его версию или удалить JRE, установленную вместе с ним.

  10. Убедитесь, что проблема все еще существует.

Метод 4: исправление ошибок с помощью кода

У этой ошибки есть разные причины, и некоторые из них включают в себя определенные ошибки в вашем коде. Мы выделим некоторые из них ниже.

  • Удаление дефиса : некоторые пользователи отметили, что ошибка была исправлена ​​путем замены двойного дефиса «-» на одинарный «-» в их коде. Например:

    Измените код

    «Sony @ sony-VPCEH25EN: ~ $ java –версия

    Подобрал JAVA_TOOL_OPTIONS: -javaagent: /usr/share/java/jayatanaag.jar

    Нераспознанный вариант: –версия

    Ошибка: не удалось создать виртуальную машину Java.

    Ошибка: возникла фатальная исключительная ситуация. Программа будет закрыта."

    Чтобы

    «Sony @ sony-VPCEH25EN: ~ $ java -version

    Подобрал JAVA_TOOL_OPTIONS: -javaagent: /usr/share/java/jayatanaag.jar

    Нераспознанный вариант: –версия

    Ошибка: не удалось создать виртуальную машину Java.

    Ошибка: возникла фатальная исключительная ситуация. Программа будет закрыта."

  • Кроме того, попробуйте удалить следующую строку из своего аргумента

    -Djava.endorsed.dirs = "C: \ Program Files \ Apache Software Foundation \ Tomcat 8.5 \ endorsed"

  • Откройте файл eclipse.ini и убедитесь, что вы добавили запись «-vm» над аргументами vm, иначе JVM V6 будет выбран в переменных env.
  • Если вы используете Ubuntu, вы должны знать, что Java 8 - единственная поддерживаемая версия. Поэтому пользуемся третьим способом. Удалите Java и установите предыдущую версию.

Метод 5: редактирование файла Eclipse.ini

We can also tweak things inside the Eclipes.ini File to get rid of this issue. There might be a couple of issues with its configuration that need to be addressed therefore, we have divided it into separate issues. Follow the one which suits your scenario the best.

Lowering Memory Use

  1. Open the Eclipse.ini file inside the Eclipse folder with notepad.
  2. Find the line similar to “-Xmx256m” (It might be -Xmx1024m or -Xmx 512m).
  3. Now change the default value to a more reasonable figure depending upon the RAM installed on your computer and add the version number to it as well. For Example:
    -Xmx512m -Dosgi.requiredJavaVersion=1.6 OR -Xmx512m -Dosgi.requiredJavaVersion=1.7 OR -Xmx512m -Dosgi.requiredJavaVersion=1.8
  4. Also, try removing the “256m” value from the “-launcher.XXMaxPermSize” line.
  5. Check to see if the issue persists.

Tinkering Around

  1. Try to remove the following lines from your file.
    -vm P:\Programs\jdk1.6\bin
  2. Also, change the following lines.
    set -Dosgi.requiredJavaVersion=1.5 TO set -Dosgi.requiredJavaVersion=1.6
  3. Also, try adding the following line above “-vmargs!” line.
    -vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe
  4. Also, point to JVM.dll using the following line.
    -vm C:\Program Files\Java\jre7\bin\client\jvm.dll
  5. Open the Eclipse file and replace “-vmargs” with the path of javaw.exe. For Example:
    -startup plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813 -product com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256M -showsplash com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile **-vm “c:\Program Files\Java\jdk1.7.0_07\bin\javaw.exe”** -Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx768m -Declipse.buildId=v21.1.0-569685
  6. Also, you can place the following line at the end and check if that works.
    -vmargs -Xms40m -Xmx512m -XX:MaxPermSize=256m
  7. Furthermore, try removing the following lines from the eclipse.ini and check if that works.
    -XX:+UseStringDeduplication -XX:+UseG1GC
  8. Вы также можете попробовать удалить файл eclipse.ini, если проблема не устранена, поскольку, как сообщается, проблема была устранена для некоторых, но не забудьте сначала создать резервную копию на случай, если она вам понадобится. Кроме того, попробуйте закрыть все энергоемкие приложения перед запуском Java, чтобы убедиться в доступности необходимых ресурсов.

Проверка на повреждение JDK

  1. Нажмите «Windows» + «R», чтобы открыть окно «Выполнить», и введите «cmd».
  2. Введите следующую команду и проверьте, выдает ли она ошибку.
    c: \> java -версия
  3. Если выдает ошибку, полностью переустановите JDK.