Вы также должны отключить опцию «Автоматическая перезагрузка модуля по умолчанию». Если вы уже добавили / опубликовали модули из Eclipse в Tomcat, отключите «Автоматическую перезагрузку» для каждого веб-модуля (через вкладку «Модули» на странице конфигурации Tomcat). Это должно помешать Tomcat перезагрузить приложение при обновлении одного файла класса, что, как я подозреваю, является временем загрузки / ожидания.

у иметь возможность развертывать изменения кода в Tomcat (почти мгновенно), пока я работаю в Eclipse.

Пока что у меня есть вывод из Eclipse, помещающий встроенные классы вWEB-INF/classes папка моего веб-приложения.

У меня также есть перезагружаемый контекст, сweb.xml в качестве просматриваемого ресурса. Любое редактирование / сохранение в этот файлделает перезагрузите мое веб-приложение, заняв чуть более одной секунды - гораздо быстрее, чем создание нового файла войны и его полное развертывание.

Однако я хотел бы запустить повторное развертывание при редактировании любого исходного файла. Поскольку файлы .class изменяются в Tomcat, мне кажется, что мне просто нужно отслеживать любые изменения вWEB-INF/classes папка и это дети.

Я прочитал, что я могу добавить дополнительные просматриваемые ресурсы в Tomcatcontext.xml но это, кажется, не совсем то, что мне нужно - разве невозможно указать каталог, который будет отслеживаться (включая рекурсивный мониторинг подпапок и файлов)?

<Context>
  <WatchedResource>WEB-INF/web.xml</WatchedResource>
  <WatchedResource>WEB-INF/someother.file</WatchedResource>
  <Manager pathname=""/>
</Context>

По сути, мой вопрос, могу ли я посмотреть всю папку классов (без учета каждогоWatchedResource явно), чтобы вызвать повторное развертывание в Tomcat?

Если нет, могу ли я настроить Eclipse дляtouch файл web.xml, когда я сохраняю исходный файл в этом проекте? Я занимаюсь разработкой в ​​системе Windows. :(

PS Меня не интересует продукт JRebel. Любой ответ должен бытьсвободно решение.

Обновить

По словам котадокументацияпапка классов должна отслеживаться путем установки перезагрузки контекста:

Установите значение true, если вы хотите, чтобы Catalina отслеживала классы в / WEB-INF / classes / и / WEB-INF / lib на предмет изменений, и автоматически перезагружала веб-приложение в случае обнаружения изменений.

Кажется, только изменения в файле web.xml вызывают перезагрузку. Это ошибка или мои настройки неверны?

Кроме того, я прочитал о настройкеdocBase атрибут для данного контекста:

docBase="webapps/someExample"

Похоже, это близко к тому, что мне нужно, поскольку я мог бы быстро переиздать в Eclipse. Моя единственная проблема заключается в том, что мне требуется, чтобы несколько веб-приложений / сервлетов работали в Tomcat одновременно, на одном и том же порту и т. Д.

Ответы на вопрос(1)

Ваш ответ на вопрос