2009-09-23 6 views
3

Я использую Eclipse и Maven-2, и я хотел бы иметь возможность редактировать мои HTML-файлы без «этого» (не уверен, что это Eclipse или Maven), перекомпилируя мое приложение. Я понимаю, что обычно Eclipse пытается сделать горячую замену новых скомпилированных классов Java с Eclipse и Tomcat.Могу ли я обновить HTML-файлы с помощью Wicket и Eclipse без перекомпиляции классов?

Могу ли я использовать что-то вроде этого?

getResourceSettings().setResourcePollFrequency(null); 

Я знаю, что я могу включить автоматическое обновление выключено для Tomcat в Eclipse, но я хотел бы файл HTML, чтобы обновить и классы не по возможности обновлять.

BTW, моя главная проблема заключается в том, что Tomcat имеет тенденцию получать ошибки Perm gen после того, как я (горячий) перезагрузит слишком много классов java.

ответ

1

Вы вроде как правильно, вы должны использовать setResourcePollFrequency(Duration.ONE_SECOND); или аналогичный. This link has more detailed information. Однако я обнаружил, что из-за кэширования внутренних кеш-кеш-кэшей Wicket, похожего на то, что он действительно перепутался после любого горячего обмена, вам просто нужно изучить горячую клавишу для перезапуска Tomcat или начать разработку Wicket с помощью встроенного Jetty и WicketTester.

1

Возможно, вы захотите рассмотреть вопрос о увеличении пространства перменца при запуске 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 не работает, попробуйте использовать Duration.MAXIMUM. Кроме того, вы можете снять флажок «Build Automatically» в меню Project eclipse, хотя это больше хлопот, и это стоит того, ИМХО.

Согласно калитке FAQ калиток только перезагружает изменил разметку файлы, когда вы явно задать частоту опроса ресурса:

http://www.wicketframework.org/faqs.html

Я не уверен, как предотвратить затмение от копирования измененных файлов на выход в стороне от автоматического отключения сборки.

1

Если Включена автоматически (по умолчанию: Project-> Build Automatically), то любая модификация файлов проекта будет инициировать сборку, независимо от того, находятся ли они в исходных папках или нет.

Я всегда работаю с Сборки автоматически инвалидов, как я считаю, это слишком навязчивым (по причинам, как это), и просто нажмите Ctrl-B, когда я хочу, проект строительства, или альт-P N к при необходимости запустите чистый диалог.

+0

nvm .............. –

0

Я понимаю, что вы используете (и можете продолжать использовать) Tomcat, но при разработке Wicket вы можете запустить поставляемый сервер Jetty onder /src/test/java/com/your/package/Start.java в отладке чтобы получить это поведение. Установите Wicket в режим разработки, чтобы использовать эту функцию.

0

HTML-файлы или файлы jsp?

Вы используете tomcat? Если вы редактируете только html-файлы, перейдите и измените их по своему усмотрению. Пока вы не размещаете их где-нибудь еще, чтобы tomcat их извлекал, вы увидите обновления (обновления).

Если это jsp, сохраните новый файл, удалите файлы из старой рабочей папки. Это заставит tomcat подумать, что это первый раз, когда файл запрашивается, и он будет повторно компилировать jsp на лету.

+0

Контекст этого вопроса - это Wicket, который делает много особых вещей с файлами HTML (которые живут в тех же пакетах, что и соответствующие классы Java). – Esko