Может ли Multi-Module M2ECLIPSE / WTP Project Project Modules развернут в Web-Inf / Classes?

StackOverflow https://stackoverflow.com/questions/3405653

Вопрос

В настоящее время мы используем MyECLIPSE со своим встроенным интеграцией Maven4myeclipse и его встроенной поддержкой сервера J2EE, но хочется преобразовывать в регулярное Eclipse (HELIOS конкретно), чтобы иметь возможность использовать его 64-битную установку в Windows. (MyEClipse еще не поддерживает 64-бит в Windows.)

До сих пор у меня есть рабочий прототип Helios Eclipse, используя M2LIPSE с помощью плагина WTP, развернувшего наше большое веб-приложение в Tomcat. Развертывание является небольшим процессором интенсивным, но он работает, и приложение запускается.

Вот что критически отличается вот как развернуты зависимые проекты. В нашем Myeclipse окружающей среды все зависимые проекты были развернуты в развернутые взорванные в папке веб-инф / классов, и поэтому, когда сервер запущен, изменение в классе Java в IDE будет копировать только затронутые файлы Web-inf / Классы сервера и Hot-Swap класс в JVM и ... Boom - Live Change на сервер. Отлично подходит для отладки.

Однако в моем преобразовании Helios все зависимые проекты получают Джаред и вставят в Web-inf / lib. Это имеет преимущество в том, что на самом деле выглядит на самом деле, как выглядит наше реальное производственное изображение, построенное Maven, но среда разработки сильно не хватается этим, в том, что возможности для замены горячей замены, по-видимому, полностью потеряны. Здесь, если я изменю класс Java в зависимом проекте, M2ECLIPSE повторно упаковывает банку, считает, что развернутое веб-приложение отсутствует синхронизацией, а также переиздают все приложение. Не только это проблема в том, что все веб-приложение должно регистрироваться (что-то, что наше откровенно не преуспевает, учитывает его размер и огромное время инициализации), это также неприятная задержка в затмении. (Для нашего приложения это занимает около минуты или два.)

Таким образом, мой вопрос: есть ли способ получить изменения внутризависимых проектов для горячего помещения к запуску JVM и замените развертываемые файлы без этой неприятности республики? Я предполагаю, что это означает, что это означает развертывание этих классов файлов для веб-инф / классов, но не знают наверняка, то есть возможным (a) или (b), действительно необходимым в рамках этого решения.

Что другие делают, чтобы решить это? Это разрешимо?

Заранее спасибо!

Это было полезно?

Решение

Я думаю, что вы ищете решение, описанное в Re: WTP Tomcat Hot развертывание с M2ECLIPSE:

Если вы включите опцию «Обслуживать модули без публикации», то на сервер Tomcat добавляется специальная банка, что позволяет поддержать Tomcat в WTP для управления «ClassPath» веб-приложения. Кроме того, коммунальные проекты не собираются в банки. Вместо этого выходная папка Java (ы) утилитных проектов включена в «ClassPath» веб-приложения, эффективно обслуживая файлы классов напрямую. Если вы отключите автоматическую загрузку для контекста, и запустите в режиме отладки, изменения, которые вы совершаете на классы, могут быть заменены горячим кодом, поэтому контекст не должен перезагружать. Я верю, что это будет достичь того, что вы ищете.

Сделать это:

  • Перейти к Сервер Посмотреть
  • Двойной клик Ваш сервер Tomcat для открытия настроек сервера
  • В Варианты сервера, выберите то Обслуживать модули без публикации вариант
  • В Издательский, выберите то Никогда не публикуйте автоматически вариант
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top