Я хочу иметь возможность развертывать изменения кода в Tomcat (почти мгновенно), пока я разрабатываю Eclipse.
На данный момент у меня есть результат работы Eclipse, в котором построенные классы помещаются в папку WEB-INF / classes
моего веб-приложения.
У меня также есть перезагружаемый контекст с web.xml
как наблюдаемый ресурс. Любое редактирование / сохранение этого файла перезагружает мое веб-приложение, занимая всего одну секунду - намного быстрее, чем создание нового файла войны и его полное развертывание.
Однако я бы хотел, чтобы do запускает повторное развертывание, когда я редактирую любой исходный файл. Поскольку.файлы классов изменяются в Tomcat, кажется, мне просто нужно отслеживать любые изменения в папке WEB-INF / classes
и ее дочерних элементах.
Я читал, что могу добавить дополнительные наблюдаемые ресурсы в Tomcat context.xml
, но, похоже, это не совсем то, что мне нужно - если только невозможно указать каталог, который будет отслеживаться ( включая рекурсивный мониторинг подпапок и файлов)?
WEB-INF/web.xml
WEB-INF/someother.file
Итак, по сути, мой вопрос заключается в том, могу ли я просмотреть всю папку классов (без явного включения каждого WatchedResource
), чтобы вызвать повторное развертывание в Tomcat?
Если нет , могу ли я настроить Eclipse на касание
файла web.xml всякий раз, когда я сохраняю исходный файл в этом проекте? Я разрабатываю в системе Windows. : (
PS Меня не интересует продукт JRebel. Любой ответ должен быть бесплатным решением.
Обновление
Согласно документации Tomcat , Папку классов следует контролировать, задав контекст для перезагрузки:
Установите значение true, если вы хотите, чтобы Каталина отслеживать классы в / WEB-INF / classes / и / WEB-INF / lib для изменений, и автоматически перезагружать Интернет приложение, если обнаружено изменение.
Только изменения в web.xml, кажется, вызывают перезагрузку. Это ошибка или мои настройки неверны?
Кроме того, я читал об установке атрибута docBase
для данного контекста:
docBase="webapps/someExample"
Это похоже на то, что мне нужно, так как я затем можно быстро переиздать в Eclipse. Моя единственная проблема в том, что мне нужно, чтобы несколько веб-приложений / сервлетов работали в Tomcat одновременно, на одном порту и т. Д.