Горячее развертывание изменений разработки с Eclipse, Tomcat и Jetspeed

Я разрабатываю приложение портала Jetspeed, работающее на Tomcat, используя Eclipse IDE с плагином Sysdeo Tomcat для запуска отладки приложения, работающего в Tomcat/Jetspeed.

Мне было интересно, как включить горячее развертывание изменений разработки для этой среды? Кто-нибудь знает, как настроить веб-приложение портала Jetspeed для оперативного развертывания из Eclipse? Не могу найти какую-либо информацию в сети для горячего развертывания Jetspeed.

5 ответов

Я обычно создаю файл сборки ant, свободно основываясь на:

http://tomcat.apache.org/tomcat-6.0-doc/appdev/build.xml.txt

и используйте цели 'install'/'remove' для развертывания на удаленном коте

Подобный вопрос здесь: Удаленное развертывание веб-приложения Tomcat из Eclipse

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

Возможно, вы захотите взглянуть на Джребел. Я хотел посмотреть сам - Насколько я понимаю, jrebel позволяет вносить изменения в исходный код, а затем сразу же видеть результаты в реальной среде (например, tomcat) без повторного развертывания и / или перезапуска служб.

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

Мое решение изображено здесь

Вы можете использовать подключаемый модуль (в версии Java EE) "Серверы":

  1. Перейдите в Windows > "Установки"> "Сервер"> "Среды выполнения" и добавьте своего кота
  2. Либо попробуйте использовать publishingили используйте плагин FileSync. Там вы можете указать, какие папки из вашего проекта должны быть скопированы (в реальном времени) в какой каталог на вашей машине (tomcat/webapps/yourapp). Приложив немного больше усилий, можно синхронизировать конфигурацию файловой машины (используя только один параметр как TOMCAT_ROOT), если вы хотите зарегистрировать проект в репозитории, где его будут использовать другие.
  3. Запустите ваш кот в режиме отладки, и у вас будет возможность горячего развертывания всего, что вы сохраните.

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

Из вашего вопроса не совсем понятно, хотите ли вы развернуть свой проект портала Jetspeed или приложение с портлетами. Первое фактически является обычным веб-приложением и теоретически может быть развернуто в горячем режиме с помощью плагина Eclipse WTP. Если вы разрабатываете приложения с портлетами, это усложняется тем, что они развертываются не непосредственно в Tomcat, а в развертывании Jetspeed, работающем в Tomcat (фактическое /webapps/jetspeed-portal/WEB-INF/deploy).

Хитрость, которую я использовал, заключается в развертывании вашего приложения с помощью сценария сборки Maven. После этого вы можете скопировать изменения, сделанные tomcat, в ваш web.xml вашего портлета в ваш web.xml и развернуть его непосредственно из Eclipse.

Другие вопросы по тегам