Я занимаюсь разработкой веб-приложений с помощью Eclipse,/Glassfish на Windows 7, и я вижу эту ошибку, по крайней мере несколько раз в день при развертывании новой версии приложения:Затмение/Glassfish работает из памяти
SEVERE: Exception while preparing the app : PermGen space
SEVERE: java.lang.OutOfMemoryError: PermGen space
Когда я это вижу, мне нужно закрыть Eclipse, использовать диспетчер задач Windows, чтобы остановить процесс Java (который, как я подозреваю, является Glassfish), и перезапустить Eclipse. Это неприятность и нежелательное прерывание.
Есть ли что-нибудь, что я могу исправить/настроить, чтобы эта ошибка исчезла или, по крайней мере, уменьшила ее частоту? Или это утечка памяти, с которой мне просто придется жить?
Я думаю, что видел «горячие» перераспределения приложений Spring/Hibernate с течением времени. Если вы используете эти два, я не уверен, что с этим можно сделать. Тем не менее, я признаю, что это неопределенное предположение, основанное на воспоминании от недавнего времени. – millimoose
В каталоге, где вы запускаете Eclipse, у вас есть файл eclipse.ini. Он содержит какие-либо настройки для MaxPermSize? Если нет, вы можете попробовать добавить: --launcher.XXMaxPermSize 512M ... или какой-либо другой номер и посмотреть, не улучшилось ли для вас что-то отличное от стандартного. См. Эту ссылку: http://wiki.eclipse.org/FAQ_How_do_I_increase_the_permgen_size_available_to_Eclipse%3F –
@Darius: Спасибо, я попробую. Из любопытства, знаете ли вы о каких-либо ресурсах, обсуждающих самые большие настройки, которые следует учитывать? У меня довольно приличная машина, и Eclipse/Glassfish, вероятно, являются наиболее важными приложениями, запущенными на нем в любой момент времени; У меня нет никаких проблем, позволяя им запускать ресурсы. – BlairHippo