Шаг 1. Измените конфигурацию запуска вашего приложения и добавьте (или увеличьте, если он есть) параметр -XX: MaxPermSize. Это временный шаг, так как если это живая система, скорее всего, дополнительная память также будет заполнена в какой-то момент в будущем, но на данный момент это исправит ошибку.

Шаг второй: освободите ненужные ресурсы. Убедитесь, что все соединения с базой данных закрыты. Разумно загружайте и выгружайте классы. Реструктурируйте программу для работы с небольшими объемами данных за раз. Анализируйте и устраняйте утечки памяти

Raj 27 Апр 2015 в 07:28

Важно знать, возникает ли ошибка PermGen после каждого развертывания или после нескольких.

Если это первый случай, просто увеличьте объем памяти для PermGen.

Если второй, в вашем коде есть несколько мертвых коров. В этом случае увеличение объема памяти только отсрочит ошибку, так как ваша память все еще увеличивается в размере после каждого развертывания. Вы должны профилировать свое приложение, например, с помощью jvisualvm (вот хороший учебник ) и найди несколько мертвых коров. Важно понимать, что PermGenError не о самих классах, а о загрузчиках классов (Утечки из загрузчика классов: страшное исключение «java.lang.OutOfMemoryError: PermGen space»).

How to fix minecraft java crash (WORKING 100%)

В моем случае (сервер Glssfish) проблема заключалась в добавлении библиотек Log4j2 в веб-приложение. Мне пришлось добавить их также в серверные библиотеки ( domain-dir / lib ), чтобы согласно Иерархия загрузчиков классов Glassfish, где они были загружены общим загрузчиком классов.

Szarpul 27 Апр 2015 в 07:57

Либо оптимизируйте свою программу, либо увеличьте размер кучи java с параметрами времени выполнения. (- Xxx)

Shriram 27 Апр 2015 в 07:16

Вызывается, когда виртуальная машина Java не может выделить объект, потому что ему не хватает памяти, и сборщик мусора не может сделать больше памяти. Объекты OutOfMemoryError могут быть созданы виртуальной машиной, как если бы подавление было отключено и / или трассировка стека не была доступна для записи.

Увеличьте размер кучи вашей JVM

Читайте также:  Майнкрафт как найти мицелий

Можно увеличить размер кучи, выделенной JVM, с помощью параметров командной строки. Здесь у нас есть 3 варианта.

-Xms set initial Java heap size -Xmx set maximum Java heap size -Xss set java thread stack size

Распространенной причиной OutofMemory в PermGen является ClassLoader. Всякий раз, когда класс загружается в JVM, все его метаданные, вместе с Classloader, хранятся в области PermGen, и они будут собираться мусором, когда Classloader, который их загрузил, готов к сборке мусора. В случае, если Classloader имеет утечку памяти, все загруженные им классы останутся в памяти и вызовут нехватку памяти permGen, если вы повторите это несколько раз.

Теперь есть два способа решить эту проблему: 1. Определить причину утечки памяти или ее наличие. 2. Увеличьте размер PermGen Space с помощью параметров JVM -XX: MaxPermSize и -XX: PermSize.

Вылеты Майнкрафта. Исправление ошибок JAVA. Простые способы.

Источник: question-it.com

Часто крашится майн

Фотография

  • Пользователи
  • Сообщений: 3
  • Написал 05.09.2015 — 21:50

    Крашится майн примерно каждые 10 мин. с ошибкой (прикрепил), до недавнего времени всё работало отлично, никаких манипуляций с компом и майном не проводил.

    Скрытый текст

    Java последней версии, постоянно обновляю (на данный момент Version 8 Update 60), обоих разрядов.

    Майн 1.8 играю через TLauncher последней версии (1.59), установлены forge, liteloader, optifine, несколько модов.

    Последнее из консоли TLauncher’а

    Скрытый текст

    [23:09:03] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException

    java.util.concurrent.ExecutionException: java.lang.NullPointerException
    at java.util.concurrent.FutureTask.report(Unknown Source) ~[?:1.8.0_60]
    at java.util.concurrent.FutureTask.get(Unknown Source) ~[?:1.8.0_60]
    at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?]
    at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1012) [bsu.class:?]
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:345) [bsu.class:?]
    at net.minecraft.client.main.Main.main(SourceFile:120) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_60]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_60]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_60]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_60]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?]
    Caused by: java.lang.NullPointerException
    at net.minecraft.client.network.NetHandlerPlayClient.func_147242_a(NetHandlerPlayClient.java:1163) ~[cee.class:?]
    at net.minecraft.network.play.server.S04PacketEntityEquipment.func_148833_a(SourceFile:39) ~[la.class:?]
    at net.minecraft.network.play.server.S04PacketEntityEquipment.func_148833_a(SourceFile:9) ~[la.class:?]
    at net.minecraft.network.PacketThreadUtil$1.run(SourceFile:13) ~[ih.class:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:1.8.0_60]
    at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:1.8.0_60]
    at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?]
    . 9 more
    [L] Launcher stopped.
    [L] Minecraft closed with exit code: -805306369
    [L] Signature «PermGen error» matches!

    Читайте также:  Суперплоскость Майнкрафт как настроить

    Снимок.PNG

    майну выделяю 1024Мб

    Добавлено спустя 5 минут:

    вспомнил, что я заменил накануне проблемы мод «Not-Enough-Items-1.8», скачанный с другого сайта, это могло вызвать ошибку?)

    #2 rumickon

  • Администраторы
  • Сообщений: 684
  • Написал 05.09.2015 — 22:23

    А можете выделить побольше памяти, 2 ГБ, например, и протестировать?

    #3 IIukYs

  • Пользователи
  • Сообщений: 3
  • Написал 05.09.2015 — 23:39

    в тлаунчере максисум 1500, выставлял и 700мб и 1500, разницы никакой

    #4 rumickon

  • Администраторы
  • Сообщений: 684
  • Написал 06.09.2015 — 03:56

    Увеличьте хотя бы до 1500 и скиньте лог нового краша.

    • Поблагодарил: IIukYs

    #5 Cyxapuk

  • Главные модераторы
  • Сообщений: 8706
    • Ник в Minecraft:
      Meegoo

    Написал 06.09.2015 — 11:22

    в тлаунчере максисум 1500, выставлял и 700мб и 1500, разницы никакой

    Джаву 64х битную поставь

    • Поблагодарил: IIukYs

    Источник: minecrafting.ru

    Permgen error minecraft что это

    При возникновении ошибки java.lang.OutOfMemoryError: PermGen space
    Eclipse может простонеожиданно завершить работу и предложить просмотреть логи.
    Хочу заметить, что я впервые встретился с этой ошибкой, когда начал использовать Eclipse для рисования UML диаграмм. То есть в тот момент, когда Eclipse начал использовать плагины org.eclipse.gef и org.eclipse.emf ,
    а эти плагины есть также в Eclipse IDE for Java EE Developers. В этом можно убедиться тут .
    Также эта ошибка может появляться при использовании HQL запросов , когда активно используется Hibernate .

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

    И так, если кратко, то решить быстро это проблему можно так:
    в директории, где находится eclipse или eclipse.exe (для Windows) нужно найти файл eclipse.ini и открыть в текстовом редакторе, в котором нужно добавить/отредактировать следующие строки:
    -Xms512m
    -Xmx512m
    -XX:PermSize=512m
    -XX:MaxPermSize=512m

    Читайте также:  Классные клипы про Майнкрафт

    Это пример моих настроек. Настраивайте параметры в зависимости от объема памяти на вашем компьютере. Кратко об этих параметрах:
    Xms – это минимальный объем выделяемой памяти (кучи – heap)
    Xmx – это максимальный объем выделяемой памяти (кучи – heap)
    XX:PermSize – это начальный размер permanent generation . Он создается в дополнение к объему Xms .
    XX:MaxPermSize – максимальный размер permanent generation .

    Теперь осталось запустить eclipse c ключем -clean
    eclipse -clean
    ( Примечание : начиная с версии 3.4 ( GANYMEDE) запускать -clean не нужно)

    НО! Все-таки нужно убедиться что эти параметры задействованы. Дело в том, что на некоторых Unix * ОС настройки файла eclipse.ini не срабатывают, даже если описаны правильно.
    Для того, чтобы убедиться изменения в настройках можно просмотреть:
    Help -> About Eclipse Platform -> Configuration details
    и смотрим строку eclipse.vmargs=

    Чтобы окончательно победить проблему есть 2 способа:

    1-й способ. Window -> Preferences -> Java -> Installed JREs -> выбор нашего JRE -> Edit и в строке Default VM Arguments пишем
    -vmargs -Xms512m -Xmx512m -XX:PermSize=512m -XX:MaxPermSize=512m

    2-й способ. Написать скрипт запуска eclipse . Например, в создать файл eclipse.sh , дать права на запуск ( +х ) и прописать в файле:
    #!/bin/bash

    eclipse -vmargs -Xms512m -Xmx512m -XX:PermSize=512m -XX:MaxPermSize=512m

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

    Источник: realitman.wordpress.com