Ошибка «Java Virtual Machine not found» или «Unable to launch the Java Virtual Machine» при запуске программы почти всегда означает одно: на компьютере либо вообще не установлена виртуальная машина Java, либо установлена версия, несовместимая с приложением. Прежде чем искать установщик, проверьте текущее состояние системы — откройте командную строку и выполните команду java -version. Если в ответ появляется «java не является внутренней или внешней командой», JVM в системе отсутствует и её нужно скачать.
В этой статье разберём, что такое Java Virtual Machine, чем отличаются JRE, JDK и OpenJDK, откуда безопасно скачать установщик и как устранить типичные проблемы после установки.
Что такое Java Virtual Machine и зачем она нужна
Java Virtual Machine (JVM) — это исполняющая среда, которая запускает программы, скомпилированные в байт-код Java. Именно благодаря JVM один и тот же код работает на Windows, Linux и macOS без перекомпиляции — принцип «write once, run anywhere». Без установленной JVM ни одно Java-приложение, будь то Minecraft, IntelliJ IDEA или корпоративная банковская программа, просто не запустится.
Важно понимать разницу между тремя терминами, которые часто путают при поиске файла для загрузки:
- ☕ JVM — сама виртуальная машина, исполняет байт-код, не распространяется отдельным файлом.
- 📦 JRE (Java Runtime Environment) — JVM плюс стандартные библиотеки; минимум для запуска Java-программ.
- 🛠️ JDK (Java Development Kit) — JRE плюс компилятор и инструменты разработчика; нужна программистам.
- 🌐 OpenJDK — открытая реализация платформы Java, на базе которой собираются большинство дистрибутивов.
Если вам нужно просто запустить приложение, достаточно JRE или JDK с нужной версией Java. Если вы разработчик — скачивайте сразу JDK, отдельный JRE при этом не потребуется.
Какую версию Java выбрать перед скачиванием
Определяющий фактор — требования конкретного приложения. Старые программы могут работать только на Java 8, современные — требовать Java 17 или 21. Посмотрите документацию к приложению или текст ошибки запуска: часто там прямо указана нужная версия.
Версии с длительной поддержкой (LTS) — 8, 11, 17, 21 — наиболее стабильны и получают обновления безопасности дольше остальных. Если приложение не задаёт жёстких требований, разумный выбор — последняя LTS-версия.
| Версия Java | Тип выпуска | Кому подходит |
|---|---|---|
| Java 8 | LTS | Устаревшие приложения и игры, требующие именно её |
| Java 11 | LTS | Приложения переходного периода, корпоративный софт |
| Java 17 | LTS | Большинство современных приложений |
| Java 21 | LTS | Новейшие проекты и разработка |
⚠️ Внимание: несколько версий Java могут сосуществовать на одном компьютере, но система по умолчанию использует ту, что прописана в переменных окружения. Если приложение требует конкретную версию, убедитесь, что именно она указана в
PATHиJAVA_HOME.
Откуда скачать Java Virtual Machine безопасно
Искать установщик следует только на официальных ресурсах. Основные проверенные источники — сайт Oracle (дистрибутив Oracle JDK с коммерческой лицензией для ряда сценариев использования) и сборки на базе OpenJDK: Eclipse Temurin (бывший AdoptOpenJDK), Amazon Corretto, BellSoft Liberica, Microsoft Build of OpenJDK. Все они бесплатны и подходят для запуска приложений.
Сторонние «сборники софта» и торренты — частый источник заражения системы. Вредоносные установщики маскируются под популярные запросы вроде «java virtual machine download», поэтому никогда не скачивайте Java с неофициальных файлообменников — только с сайтов производителей дистрибутивов.
Пошаговая установка JVM на Windows
Процесс установки занимает несколько минут и не требует специальных навыков. Порядок действий одинаков для большинства дистрибутивов на базе OpenJDK:
- ⬇️ Скачайте установщик
.msiили.exeнужной версии под архитектуру вашей системы (x64 для большинства современных ПК). - 📂 Запустите файл от имени администратора и следуйте мастеру установки.
- 🔧 В процессе установки отметьте опцию добавления в
PATHи установкиJAVA_HOME, если она предлагается. - ✅ После завершения перезапустите командную строку и проверьте установку командой
java -version.
☑️ Проверка после установки Java
Если команда java -version выводит номер версии и сборку — виртуальная машина установлена корректно. Если система снова сообщает, что команда не найдена, закройте и заново откройте терминал: обновлённые переменные окружения подхватываются только в новых сессиях.
java -version
javac -version
Настройка переменных окружения JAVA_HOME и PATH
Некоторые приложения — особенно серверные и инструменты сборки вроде Maven или Gradle — ищут Java не в PATH, а через переменную JAVA_HOME. Если установщик не создал её автоматически, сделайте это вручную.
Откройте «Параметры → Система → О системе → Дополнительные параметры системы → Переменные среды». Создайте системную переменную JAVA_HOME со значением — путём к папке установки JDK (например, каталог вида C:\Program Files\Java\jdk-17, точный путь зависит от вашей установки). Затем в переменную Path добавьте запись %JAVA_HOME%\bin.
После сохранения изменений обязательно откройте новое окно командной строки и повторите проверку. Если путь указан с ошибкой — например, ведёт на удалённую старую версию — приложения будут запускаться не на той JVM или не запустятся вовсе.
Как проверить, какая Java используется системой
Выполните в командной строке команду where java — она покажет все пути к исполняемым файлам java.exe в порядке приоритета. Первый в списке путь и есть используемая по умолчанию JVM.
Типичные ошибки при запуске и их решение
Даже после корректной установки пользователи сталкиваются с ошибками запуска. Разберём самые распространённые.
«Could not create the Java Virtual Machine» — как правило, следствие неверных параметров запуска, например слишком большого объёма выделяемой памяти в параметре -Xmx, который превышает доступные ресурсы системы. Проверьте аргументы запуска приложения и уменьшите значение.
«UnsupportedClassVersionError» — приложение скомпилировано под более новую версию Java, чем установлена у вас. Решение одно: скачайте и установите более свежий JDK/JRE.
⚠️ Внимание: не удаляйте старую версию Java, пока не убедитесь, что все нужные приложения работают на новой. Некоторые программы жёстко привязаны к конкретной версии JVM и перестанут запускаться после её удаления.
Если ошибка указывает на нехватку памяти (OutOfMemoryError: Java heap space), проблема не в установке, а в настройках: увеличьте лимит кучи через параметр -Xmx в конфигурации запуска приложения.
JVM на Linux и macOS
На Linux проще всего установить OpenJDK через пакетный менеджер дистрибутива. Для систем на базе Debian/Ubuntu команда выглядит так:
sudo apt install openjdk-17-jdk
На macOS удобный способ — пакетный менеджер Homebrew либо установщик с сайта выбранного дистрибутива. После установки проверка выполняется той же командой java -version в терминале.
Учтите, что в Linux одновременно может быть установлено несколько версий Java, а переключение между ними выполняется штатными средствами системы — например, утилитой update-alternatives в Debian-подобных дистрибутивах. Точный механизм зависит от вашего дистрибутива, поэтому сверяйтесь с его документацией.
Часто задаваемые вопросы
Бесплатна ли Java Virtual Machine для скачивания?
Да. Сборки на базе OpenJDK (Temurin, Corretto, Liberica и другие) полностью бесплатны, включая коммерческое использование. Oracle JDK имеет собственную лицензию — перед использованием в коммерческих целях ознакомьтесь с её условиями на сайте Oracle.
Чем JRE отличается от JDK и что скачивать?
JRE нужен только для запуска готовых Java-приложений, JDK включает дополнительно компилятор и инструменты разработки. Если вы не пишете код, достаточно JRE; если программируете или используете инструменты сборки — ставьте JDK.
Почему после установки команда java не находится?
Скорее всего, путь к Java не добавлен в переменную PATH или терминал не был перезапущен после установки. Закройте и откройте командную строку заново, а при повторении ошибки проверьте настройки переменных окружения вручную.
Можно ли держать несколько версий Java одновременно?
Да, это обычная практика. Система по умолчанию использует версию, указанную в PATH и JAVA_HOME, а отдельные приложения можно настроить на конкретную JVM через их собственные конфигурационные файлы.
Как узнать, какая версия Java нужна моей программе?
Посмотрите системные требования в документации приложения или текст ошибки при запуске — там обычно указана минимальная версия. Если информации нет, начните с последней LTS-версии (17 или 21).