Могу ли я обновить файлы HTML с помощью калитки и затмения без перекомплектования классов?
Вопрос
Я использую Eclipse и Maven-2, и я хотел бы иметь возможность редактировать свои HTML-файлы без «это» (не уверен, что это Eclipse или Maven) перекомпиляет мое приложение. Я понимаю, что обычно Eclipse пытается сделать горячую замену новых скомпилированных классов Java с Eclipse и Tomcat.
Могу ли я использовать что -то подобное?
getResourceSettings().setResourcePollFrequency(null);
Я знаю, что могу выключить автоматическое обновление для Tomcat в Eclipse, но я бы хотел, чтобы файл HTML обновлялся, а классы не обновлялись, если это возможно.
Кстати, моя главная проблема заключается в том, что Tomcat имеет тенденцию получать ошибки Perm Gen после того, как я (горячий) перезагрузить слишком много классов Java.
Решение
Ты вроде как правильный, ты должен использовать setResourcePollFrequency(Duration.ONE_SECOND);
или похожие. Эта ссылка имеет более подробную информацию. Анкет Однако то, что я обнаружил, так это то, что из -за кэширования контейнеров для кэширования Wicket нравится действительно испортиться после любых горячих отключений, чтобы вам просто придется выучить горячую клавишу для перезапуска Tomcat или начать развитие калитки с помощью интегрированной пристани и Уикеттер.
Другие советы
Вы можете рассмотреть возможность увеличения пространства перми, когда вы запускаете Eclipse. Есть аргумент командной строки:
eclipse [normal arguments] -vmargs -XX:PermSize=64M -XX:MaxPermSize=128M
(скопировано из :)http://wiki.eclipse.org/faq_how_do_i_increase_the_permgen_size_available_to_eclipse%3F
Я не уверен, как не допустить перезагрузки HTML -файлов, но я посмотрю, смогу ли я его найти.
РЕДАКТИРОВАТЬ: Если настраивать частоту опроса на NULL не работает, попробуйте использовать продолжительность.maximum. Кроме того, вы можете снять «строительство автоматически» в меню проекта Eclipse, хотя это больше хлопот, чем это стоит, ИМХО.
Согласно FACT -FAQ, калитка только перезагрузка изменила файлы разметки, когда вы явно устанавливаете частоту опроса ресурсов:
http://www.wicketframework.org/faqs.html
Я не уверен, как предотвратить копирование Eclipse, которые автоматически отключают сборку, за исключением автоматического отключения сборки.
Если Строить автоматически включено (это по умолчанию: Project-> Автоматически построить), тогда любая модификация файлов проекта вызовет сборку, независимо от того, находятся ли они в папках Source или нет.
Я всегда работаю с Строить автоматически отключен, так как я нахожу это слишком навязчивым (по таким причинам), и просто ударил Ctrl-B Когда я хочу, чтобы проект построил, или alt-p n Чтобы запустить чистый диалог, если это необходимо.
Я понимаю, что вы используете (и, возможно, захотите продолжать использовать) Tomcat, но во время разработки калитки вы можете запустить предоставленный сервер Jetty Onder /src/test/java/com/your/package/start.java в режиме отладки, чтобы получить это Поведение .. Установите калитку в режим разработки, чтобы использовать эту функцию.
HTML -файлы или файлы JSP?
Вы используете Tomcat? Если вы редактируете только HTML -файлы, продолжайте и измените их по своему желанию. Пока вы не разверните их где -то еще, чтобы Tomcat, чтобы принести их, вы увидите обновление (ы).
Если это JSP, сохраните свой новый файл, удалите файлы в старой рабочей папке. Это заставит Tomcat подумать, что это первый раз, когда файл будет запрашивается, и он будет пересматривать JSP на лету.