Добавление библиотеки в веб-приложение java вызывает java.lang.OutOfMemoryError: пространство PermGen? - PullRequest
1 голос
/ 14 июля 2011

Когда я пытаюсь добавить библиотеку (в данном случае: iText-2.0.8.jar) в мое веб-приложение java (JSF) и перезапустить Tomcat, все выглядит нормально.Страница входа также отображается.Однако, когда я вхожу в систему, приложение почти сразу же выдаёт печально известную ошибку java.lang.OutOfMemoryError: PermGen space.

Увеличение размера PermGen с помощью -XX:MaxPermGen=128M не решает проблему, даже с большими объемами, такими как 2048m.Когда я удаляю добавленную банку, все снова хорошо.

У кого-нибудь есть идеи, как диагностировать эту проблему?

Ответы [ 2 ]

1 голос
/ 15 июля 2011

После просеивания этой темы я прочитал эту запись в блоге .

Я только что переключился на JVM JRockit, и до сих пор не обнаружил ошибок java.lang.OutOfMemoryError: PermGen space.

В качестве бонуса мое веб-приложение теперь также работает быстрее.

1 голос
/ 14 июля 2011

У меня недавно была почти такая же проблема при запуске XWiki на Jetty с использованием Java 6 на 64-битном сервере Windows 2000.

Добавление следующих 2-х ключей командной строки решило это для меня:

  • -XX: + CMSClassUnloadingEnabled
  • -XX: + CMSPermGenSweepingEnabled

Извините, вышесказанное не помогло.
Попробуйте это -XX:MaxPermSize=128M вместо -XX:MaxPermGen=128M

...