Програми та ігри, розроблені на платформі Java, зазвичай працюють бездоганно, за умови коректної інсталяції Java. Однак, деякі користувачі нещодавно зіткнулися з проблемою, коли під час запуску Java-додатків, наприклад, Minecraft, з’являється повідомлення про помилку “не вдалося створити віртуальну машину Java”. Це свідчить про те, що віртуальна машина, необхідна для роботи Java-програм, встановлена некоректно. Якщо ви також зіткнулися з цією неприємністю, ви потрапили за адресою. Ми підготували вичерпний посібник, який допоможе вам усунути помилку “не вдалося створити віртуальну машину Java”.
Як усунути помилку “Не вдалося створити віртуальну машину Java” у Windows 10
Помилка “не вдалося створити віртуальну машину Java” часто виникає під час компіляції коду в інтегрованому середовищі розробки (IDE). Зазвичай, це пов’язано з наступними причинами:
-
Неправильні аргументи або параметри запуску Java: при запуску власної або відкритої програми, помилка може з’явитися, що може призвести до нестабільної роботи системи.
-
Недостатній розмір пам’яті купи Java: якщо програма вимагає більшого розміру купи, ніж встановлено в системних змінних, це може спричинити помилку.
-
Запуск Java-виконуваного файлу або програми без прав адміністратора: помилка може виникати під час запуску програм, яким для коректної роботи потрібен адміністративний доступ.
Тепер, коли ми розуміємо можливі причини цієї помилки, варто згадати, що користувачі Java можуть стикатися і з іншими подібними помилками, наприклад, “помилка запуску віртуальної машини Java”, яка, як правило, виникає через проблеми зі встановленням Java. Розглянемо методи, які допоможуть нам подолати помилку “не вдалося створити віртуальну машину Java”.
Попередні перевірки
-
Перевірка аргументів запуску: уважно перегляньте початкові параметри. Навіть при наявності коректної версії Java, параметри запуску можуть визначати версію, яка буде використовуватись для компіляції. Якщо ви нещодавно оновили Java, то параметри запуску можуть все ще посилатися на попередню версію.
-
Перевірка синтаксису: переконайтеся, що ваш синтаксис аргументів правильний. Незначні помилки можуть викликати помилку “не вдалося створити віртуальну машину Java”. Перевірте наявність зайвих дефісів або неправильно набраних версій.
-
Перевірка на пошкодження JDK: пошкоджений Java Development Kit може викликати помилку. Щоб перевірити цілісність JDK, виконайте наступні дії:
1. Натисніть клавішу Windows, введіть “командний рядок” та виберіть “Запуск від імені адміністратора”.
2. Введіть команду “c:> java -version” та натисніть Enter.
3. Якщо команда повертає помилку, перевстановіть JDK. Після перевстановлення перевірте, чи вирішено проблему. Якщо ні, спробуйте інші методи, описані в статті.
Метод 1. Запуск Java від імені адміністратора
Програми, запущені без необхідних прав адміністратора, можуть працювати нестабільно в Windows і викликати різні проблеми, включаючи помилку “не вдалося створити віртуальну машину Java”. Ви можете вирішити цю проблему, примусово запустивши основний виконуваний файл Java (java.exe) з правами адміністратора. Для цього виконайте наступні дії:
1. Відкрийте “Провідник файлів”, натиснувши клавіші Windows + E.
2. Знайдіть файл java.exe в Провіднику. Зазвичай, він знаходиться в:
C:Program FilesJava*JRE build version*bin
де “версія збірки JRE” залежить від встановленої у вас версії Java.
Або:
C:Program Files(x86)Common FilesOracleJavajavapath
Примітка: Якщо Java встановлена в іншому місці, перейдіть до відповідного шляху та знайдіть java.exe.
3. Клацніть правою кнопкою миші на java.exe та оберіть “Властивості”, щоб відкрити вікно властивостей.
4. Перейдіть на вкладку “Сумісність” та встановіть прапорець “Запустити цю програму від імені адміністратора”, як показано.
5. Натисніть “Застосувати”, а потім “OK”, щоб зберегти зміни.
Тепер Java запускатиметься з правами адміністратора.
Метод 2. Збільшення розміру купи Java
Помилка може виникнути через недостатню кількість оперативної пам’яті, необхідної для запуску клієнта віртуальної машини Java. За замовчуванням Java використовує максимальний розмір купи, і при запуску програми, що виходить за межі цього обмеження, виникає помилка. Створення нової системної змінної для збільшення доступної пам’яті може вирішити проблему. Для цього виконайте наступні кроки:
1. Натисніть одночасно клавіші Windows + R, щоб відкрити діалогове вікно “Виконати”.
2. Введіть “sysdm.cpl” та натисніть Enter, щоб відкрити “Властивості системи”.
3. Перейдіть на вкладку “Додатково”.
4. Натисніть кнопку “Змінні середовища…”, як показано.
5. У вікні “Змінні середовища” натисніть кнопку “Створити…” у розділі “Системні змінні”.
6. У вікні “Нова системна змінна” встановіть ім’я змінної як “_JAVA_OPTIONS”, а значення як “-Xmx512M”. Натисніть OK, щоб зберегти зміни.
Примітка: Якщо помилка не зникає, ви можете збільшити пам’ять ще більше, встановивши значення змінної як “-Xmx1024M” замість “-Xmx512M”, як показано на кроці 6.
Метод 3. Зміна коду Java
Деякі користувачі повідомляють про успішне вирішення проблеми шляхом внесення простих змін у код. Деякі з цих змін наведені нижче.
1. Заміна подвійного дефіса “–” на одинарний “-” у вашому коді може допомогти вирішити проблему.
- Код з подвійним дефісом
[email protected]:~$ java –version Picked up JAVA_TOOL_OPTIONS: –javaagent:/usr/share/java/jayatanaag.jar Unrecognized option: –version
- Той самий код з одним дефісом
[email protected]:~$ java -version Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar Unrecognized option: -version
2. Розгляньте можливість виключення наступної фрази зі свого аргументу:
-Djava.endorsed.dirs=”C:Program FilesApache Software FoundationTomcat 8.5endorsed”
3. Переконайтеся, що запис “-vm” додано перед параметрами віртуальної машини у файлі eclipse.ini. В іншому випадку JVM V6 може бути обрано у env.
Примітка: Користувачам Ubuntu слід мати на увазі, що вона підтримує лише Java 8. В такому випадку, можна видалити Java, як описано в методі 5, та встановити старішу версію.
Метод 4. Зміна файлу Eclipse.ini
Якщо ви використовуєте середовище розробки Eclipse IDE, внесення певних змін у файл eclipse.ini може виправити помилку “не вдалося створити віртуальну машину Java”.
Примітка: Файл eclipse.ini знаходиться в папці Eclipse, в каталозі, де встановлено Eclipse.
Крок I: Зменшення використання пам’яті
1. Клацніть правою кнопкою миші на файл eclipse.ini та оберіть “Відкрити за допомогою…” > “Блокнот”.
2. Знайдіть рядок, що відповідає “-Xmx256m”.
Примітка: Значення може бути також “-Xmx1024m” або “-Xmx 512m”.
3. Змініть значення за замовчуванням на значення, більш сумісне з обсягом оперативної пам’яті вашого ПК, та додайте номер версії.
Наприклад:
-Xmx512m -Dosgi.requiredJavaVersion=1.6
АБО:
-Xmx512m -Dosgi.requiredJavaVersion=1.7
АБО:
-Xmx512m -Dosgi.requiredJavaVersion=1.8
4. Спробуйте видалити значення “256m” з рядка “-launcher.XXMaxPermSize”.
Крок II: Додаткові модифікації
1. За можливості, видаліть наступний рядок з файлу:
-vm P:Programsjdk1.6bin
2. Замініть наступний рядок на код:
set -Dosgi.requiredJavaVersion=1.5
На:
set -Dosgi.requiredJavaVersion=1.6.
3. Вище рядка “-vmargs” спробуйте додати цей рядок:
-vm C:Program Files (x86)Javajre6binjavaw.exe
4. Зверніться до JVM.dll у наступному рядку:
-vm C:Program FilesJavajre7binclientjvm.dll
5. Замініть “-vmargs” на шлях до “javaw.exe” у файлі eclipse.ini.
-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 FilesJavajdk1.7.0_07binjavaw.exe”** -Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx768m -Declipse.buildId=v21.1.0-569685
6. Вставте наступний рядок в кінець файлу eclipse.ini та перевірте, чи запрацює програма:
-vmargs -Xms40m -Xmx512m -XX:MaxPermSize=256m
7. Видаліть наступні рядки з eclipse.ini та перевірте, чи це вирішить проблему:
-XX:+UseStringDeduplication -XX:+UseG1GC
Примітка: Якщо проблема залишається, спробуйте видалити файл eclipse.ini, але спочатку зробіть його копію. Також, перед запуском Java, закрийте всі програми, що споживають багато пам’яті.
Метод 5. Перевстановлення Java
У деяких випадках, проблема може виникати через некоректну інсталяцію Java або пошкодження її інсталяції з часом. У цьому випадку повне видалення Java та її перевстановлення може допомогти. Виконайте наступні дії:
1. Натисніть разом клавіші Windows + R, щоб відкрити діалогове вікно “Виконати”.
2. Введіть “Appwiz.cpl” та натисніть OK, щоб відкрити “Програми та компоненти”.
3. Знайдіть Java у списку встановлених програм.
4. Клацніть на ній правою кнопкою миші та оберіть “Видалити”, щоб видалити Java.
Примітка: Також необхідно видалити інші набори розробки Java та оновлення.
5. Дочекайтеся завершення видалення та перезавантажте ПК.
6. Перейдіть на сторінку завантажень Java, щоб завантажити останню версію середовища виконання Java.
Примітка 1: Якщо перевстановлення Java Runtime Environment не допомагає, завантажте останню версію JDK.
Примітка 2: Якщо у вас вже був JDK, спробуйте використати іншу версію або видаліть середовище виконання Java, яке входить до його складу.
Часті запитання (FAQ)
Q1. Що означає повідомлення “не вдалося створити віртуальну машину Java”?
Відповідь: Параметр “-Xmx” використовується віртуальною машиною Java для визначення максимального розміру пам’яті купи. Ймовірно, значення параметра “-Xmx” у файлі eclipse.ini встановлене занадто високим для вашого поточного середовища, що викликає це повідомлення про помилку.
Q2. Що таке віртуальна машина Java?
Відповідь: Віртуальна машина Java (JVM) – це програма, яка дозволяє комп’ютеру запускати програми Java та інші мови, які були скомпільовані у Java Bytecode. JVM описується стандартом, який формально визначає вимоги до реалізації JVM.
Q3. Чи можна отримати Java безкоштовно?
Відповідь: Щоб встановити Java, вам спочатку потрібно завантажити інсталятор Oracle. У випадаючому меню виберіть “Безкоштовне завантаження Java”. Після цього вам буде запропоновано прочитати та прийняти ліцензійну угоду кінцевого користувача.
***
Сподіваємося, що цей посібник виявився корисним, і ви змогли усунути проблему з віртуальною машиною Java. Повідомте нам, який з методів спрацював у вашому випадку. Якщо у вас є запитання чи пропозиції, не соромтеся залишати їх у розділі коментарів.