Не удалось зарезервировать достаточно места для кучи объектов
Я получаю следующее исключение повторно каждый раз, когда пытаюсь запустить программу.
Произошла ошибка при инициализации виртуальной машины
Не удалось зарезервировать достаточно места для кучи объектов
Не удалось создать виртуальную машину Java.
Я пытался увеличить свою виртуальную память (размер страницы) и объем оперативной памяти, но безрезультатно.
Как я могу устранить эту ошибку?
Переведено автоматически
Ответ 1
Запустите JVM с -XX:MaxHeapSize=512m (или любым большим числом, которое вам нужно) (или -Xmx512m для краткости)
Ответ 2
Это также может быть вызвано установкой чего-то слишком большого, например, на 32-разрядной виртуальной машине HotSpot:
-Xms1536m -Xmx1536m
где это могло бы / будет работать:
-Xms1336m -Xmx1336m
Ответ 3
вот как это исправить:
Перейдите в меню Пуск-> Панель управления-> Система-> Дополнительно (вкладка)-> Переменные среды-> Система
Переменные-> Создать: Имя переменной: _JAVA_OPTIONS Значение переменной: -Xmx512M Имя переменной: Path Значение переменной: %PATH%;C:\Program Files\Java\jre6\bin;F:\JDK\bin;
Измените это на соответствующий путь.
Ответ 4
Я столкнулся с этим при использовании javac, и, похоже, он не отображается в параметрах командной строки,
-bash-3.2$ javac -Xmx256M HelloWorldApp.java Error occurred during initialization of VM Could not reserve enough space for object heap Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.
итак, решение здесь такое - установить _JAVA_OPTIONS
-bash-3.2$ export _JAVA_OPTIONS="-Xmx256M" -bash-3.2$ javac HelloWorldApp.java Picked up _JAVA_OPTIONS: -Xmx256M
И это нормально компилируется.
Это случается со мной на машинах с большим объемом оперативной памяти, но с меньшими ограничениями памяти. Java решает выделить большую кучу, потому что обнаруживает объем оперативной памяти на компьютере, но ей не разрешено выделять ее из-за ограничений.