GWT DevMode заполняет каталог tmp - программирование
Подтвердить что ты не робот

GWT DevMode заполняет каталог tmp

GWT 2.5.1

В любое время, когда работает GWT DevMode, теперь создается новый огромный файл кеша в каталоге /tmp, поэтому OS предупреждает low disk space. Однако эта проблема никогда не возникала в прошлом.

Файл gwtXXXbyte-cache (XXX - длинное случайное число) почти 1 GB big. Это нормально?

Кэш файл автоматически очищается после завершения сеанса DevMode. BTW, перезагрузка машины не помогает.

@EDIT

В приведенном выше сравнении запуск стартового приложения GWT в DevMode создает новый файл кеша около 50 MB size. Это тоже негабаритно?

@EDIT 2

Я модифицировал исходный код GWT UI и снова пробежал DevMode. Позже новый массивный файл кеша gwtYYYbyte-cache (YYY - еще одно длинное случайное число) был сгенерирован с same size по-прежнему - точное количество байтов. Любые идеи?

@EDIT 3

После ручного удаления каталога ./gwt-unitCache, ./war/WEB-INF/deploy и ./war/ZZZ (ZZZ является размещенным GWT-приложением на DevMode), следующий сеанс DevMode создает файл /tmp/gwtXXXbyte-cache, сокращающийся до a few KB.

@EDIT 4

Запуск DevMode с опцией -workDir DDD (DDD - другой доступный для записи каталог) не работает. Кэшированные штаты продолжают писать в каталог по умолчанию /tmp.

4b9b3361

Ответ 1

1GB слишком много для целей развития. Единственная причина, по которой я могу думать, - установить в файле .gwt.xml множество перестановок. Вы должны сократить количество перестановок во время разработки до минимума (только включите спецификации, которые вы используете). Вы можете использовать DevGuideCompileReport, чтобы найти проблему.

Edit:

общая проблема сообщается другими пользователями. Это связано с тем, что плагин eclipse не удаляет временные файлы правильно. Сообщалось о проблеме и уделялось большое внимание пользователям GWT, но никаких конкретных патчей не было выпущено. Обходные пути заключались в том, чтобы вручную удалить файлы или написать script для выполнения вашей работы:

google-plugin-for-eclipse-issue74

Ответ 2

Здесь пакет Windows script для очистки после GWT:

@ECHO OFF

ECHO Cleaning ImageResourceGenerator files ...
IF EXIST "%TEMP%\ImageResourceGenerator*" DEL "%TEMP%\ImageResourceGenerator*" /F /Q

ECHO Cleaning uiBinder files ...
IF EXIST "%TEMP%\uiBinder*" DEL "%TEMP%\uiBinder*" /F /Q

ECHO Cleaning gwt files ...
IF EXIST "%TEMP%\gwt*" DEL "%TEMP%\gwt*" /F /Q

ECHO Cleaning gwt directories ...
FOR /D /R %TEMP% %%x IN (gwt*) DO RMDIR /S /Q "%%x"

ECHO.
ECHO Done.
PAUSE