Любой способ работать с Eclipse WTP, который не означает повторно развертывать _WHOLE_ приложение, когда страница JSP изменяется

Я переместил веб-приложение от MyEclipse до Eclipse WTP, и я теперь посреди первого значительного обновления к кодовой базе и веб-страницам после миграции, и это откровенно управляет мной безумный, что сохранение страницы JSP вызывает повторное развертывание ЦЕЛОГО приложения, как это занимает время и что мое соединение бэкенда не переживает десериализацию сериализации объекта сессии (который нетривиален для фиксации). В дополнение к этому JSP-редактор является безумно медленным, таким образом, я часто должен приостанавливаться, чтобы позволить редактору нагнать, чтобы быть бесспорным, где мои редактирования входят в маленький JSP использование Поверхностей JavaServer. Отключение проверки не помогло.

Eclipse Динамический веб-проект зависит от нескольких проектов затмения библиотеки, таким образом, я не могу только сказать, например, Причал для использования папки WebRoot как несколько зависимостей, затем отсутствует в пути к классу.

Вопрос:

  • Существует ли способ работать - КАКОЙ-ЛИБО способ работать - с системой WTP Eclipse, которая НЕ подразумевает повторное развертывание всего каждый раз, когда какой-либо файл сохранен?

Я могу использовать Tomcat 5.5 или Причал 6 как серверы.


Править: Наличие способности JSP-редактора поддержать на высоком уровне было бы действительно хорошо также...


Править: Рассматриваемые JSP-страницы содержат JSF-теги (myfaces 1.1.4, томагавк 1.1.9), если это имеет значение?

10
задан Thorbjørn Ravn Andersen 22 March 2010 в 10:18
поделиться

5 ответов

Я добавлю еще одно предложение, которое является скорее обходным путем.

Вы можете использовать плагин FileSync для синхронизации каталогов bin и webroot с вашим контейнером сервлета. Таким образом, вам придется использовать исходную установку, а не метаданные рабочей области. Затем, после запуска сервера в режиме отладки, все развертывается в горячем режиме.

Я успешно применил этот подход с Glassfish 2.


Еще нужно проверить параметры конфигурации сервера в вашем проекте Servers (там должна быть папка). Может случиться так, что некоторые опции отладки или горячего развертывания отключены.


Что касается скорости редактора JSP - ну, отключение проверки - это первое, что нужно сделать, и вы это сделали. Честно говоря, у моих страниц jsp (содержащих теги jsf и фактически использующих фейслеты) нет серьезных проблем со скоростью. Может быть, использовать новую установку?

3
ответ дан 3 December 2019 в 23:49
поделиться

Вы можете отключить автоматическую публикацию в Eclipse, если вам нужно:

  1. Открыть представление серверов.
  2. Дважды щелкните свой сервер в представлении . откроется страница конфигурации обзора сервера .
  3. Найдите раздел «Публикация» на странице (в правом верхнем углу).
  4. Выберите вариант «Никогда не публиковать автоматически».

Это позволит избежать проблемы «публиковать после каждого сохранения». Однако, если этот параметр отключен, вам придется выполнять развертывание вручную каждый раз, когда вы хотите, чтобы изменения отображались на вашем сервере.

2
ответ дан 3 December 2019 в 23:49
поделиться

Это странно, это не то, что я испытываю. Я перепроверил это с помощью Eclipse IDE для разработчиков Java EE (Build id: 20090920-1017) и Tomcat 5.5.28 (а также Tomcat 6.0.28), и я не могу воспроизвести проблему:

  • изменение файла Java ДЕЙСТВИТЕЛЬНО перезагружает контекст ~, но ~
  • изменение JSP НЕ перезагружает контекст

(и это без изменения каких-либо конкретных настроек моих серверов Tomcat в Eclipse ).

Проблема каким-то образом связана с вашим проектом или вашей машиной. Это происходит с каким-либо проектом на вашей машине? Можете ли вы воспроизвести это на другой машине?

1
ответ дан 3 December 2019 в 23:49
поделиться

Мой совет:

Убедитесь, что вы используете последнюю версию Eclipse/WTP и Tomcat. Может потребоваться загрузить новые биты в отдельном расположении и рабочей области. Не переходите к последней и самой большой вехе/релиз-кандидату... Я говорю о битах, которые вы можете получить из http://eclipse.org/downloads/...

Проверьте, можно ли воспроизвести проблему с помощью простейшей динамической веб-проекта. Если можете, додайте об ошибке с помощью Eclipse.org. Если вы не можете воспроизвести проблему с простейшим приложением, загрузите приложение в эту новую среду разработки и посмотрите, решит ли это проблему. Если это не так, то проблема, скорее всего, будет связана с вашим проектом.

1
ответ дан 3 December 2019 в 23:49
поделиться

в настройках вашего сервера Tomcat в eclipse вы должны включить опцию « Обслуживать модули без публикации » (см. Ниже, как это сделать)

это решение, которое я использую, и оно позволяет мне сразу просматривать изменения в JSP без повторной публикации или чего-либо еще (на Tomcat 5.5 + обычный динамический веб-проект + JSP находятся в каталоге WebContent), поэтому я не схожу с ума при разработке приложений Java:

как это сделать:

  • откройте представление сервера
  • дважды щелкните свой сервер, чтобы открыть в настройках сервера
  • в разделе «Публикация» (вверху справа) выберите вариант «Никогда не публиковать автоматически» (как сказано в некоторых других ответах на ваш вопрос), чтобы избежать действия публикации, когда вы что-то меняете
  • это САМОЕ ВАЖНОЕ: в разделе «Параметры сервера» (внизу слева) выберите опцию «Обслуживать модули без публикации». теперь ваши изменения принимаются без повторного развертывания.

ОБНОВЛЕНИЕ: вы также должны убедиться, что библиотеки, от которых вы зависите (те, которые находятся в вашем пути сборки), «скопированы» в WEB-INF / lib при разработке в Eclipse (сделайте это, выбрав соответствующие JAR-файлы / проекты в разделе «Зависимости модуля Java EE» диалогового окна «Настройки» вашего веб-проекта). со всеми этими настройками tomcat будет запускать веб-приложение из вашего проекта рабочей области с каталогом WebContent в качестве корневого каталога веб-приложения.

наслаждайтесь

6
ответ дан 3 December 2019 в 23:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: