2013-04-13 2 views
4

Я разрабатываю приложение GWT, и у меня возникают проблемы с тестированием в режиме разработки в eclipse.GWT Modlue Перезапуск вызывает ошибку в памяти

Когда я вношу изменения в код на стороне клиента, я обновляю страницу браузера (F5), чтобы перезагрузить модуль. Каждый раз, когда я это делаю (изменился или нет код), вкладка «Развитие» в eclipse показывает новую маркерную точку с «Загруженным модулем xxxx». Также, согласно диспетчеру задач, каждый раз, когда я это делаю, хост-процесс javaw.exe увеличивается примерно на 1 МБ памяти. В конце концов (10-20 обновит позже), страница не загружается и на вкладке Режим развития показывает эту ошибку:

Out of memory; to increase the amount of memory, use the -Xmx flag at startup (java -Xmx128M ...)

я могу исправить это путем остановки и перезапуска сервера (не кнопку немного обновления в Вкладка «Режим разработчика», но кнопка красной остановки), но затем модуль должен быть пересмотрен, что требует некоторого времени. Кажется, что затмение не понимает, что я закончил со старым модулем, когда перезагружаю новый. Я наблюдаю то же поведение с совершенно новым проектом GWT, поэтому я не думаю, что это мой код. Кто-нибудь знает, как это исправить?

EDIT: См. как ответы ниже для возможных решений.

+0

Очевидно, что я понимаю, что я мог бы просто увеличить объем памяти, но процесс и затмение уже принимают по 1/2 ГБ каждый, поэтому я не хочу больше отдавать им память. – thomas88wp

+0

Каковы будут соответствующие аргументы VM для 4 ГБ ОЗУ – Jagadeesh

ответ

7

Настройки по умолчанию gwt dev - это минимум, поэтому вы быстро удаляете из памяти.

enter image description here

Из этого вы можете видеть, что permgenspace является низким, и если вы обновите 20 раз в короткий Период будет выходить из памяти.

вы можете начать с помощью следующих vmargs:

-Xms512m -Xmx512m -XX:MaxPermSize=256M -XX:+UseParallelGC 

Но enrybo указал, если ваше приложение растет он требует больше памяти:

-Xms512m -Xmx1g -XX:MaxPermSize=256M -XX:+UseParallelGC 
+0

Каковы будут соответствующие аргументы VM для 4 ГБ ОЗУ – Jagadeesh

2

На самом деле не так много, что вы можете сделать. Как вы упомянули, вы можете увеличить объем памяти, но в итоге вы столкнетесь с одной и той же проблемой даже с более распределенной памятью.

Я предлагаю вам попробовать запустить в Super Dev Mode, но в этом случае вам нужно будет обновить SDK, который вы используете, до 2.5.1+. В режиме Super Dev вашему браузеру не нужен плагин, потому что на самом деле он будет работать с истинным Javascript. У вас даже есть возможность отладки в вашем браузере, но вы смотрите на свой источник Java (используя исходные карты).

+0

Спасибо за предложение! Я тоже попробую. – thomas88wp

Смежные вопросы