Как сократить время развертывания с Liferay Tomcat - PullRequest
4 голосов
/ 24 декабря 2011

Я использую Liferay 6 с комбинацией Struts2.Я использую Liferay Bundled Tomcat 7. Работает нормально.Мой вопрос, когда происходит изменение ресурса (portlet.xml или java-файл) и когда я нажимаю build.xml, развертывание занимает много времени.Подскажите пожалуйста, как уменьшить время развертывания

INFO: Server startup in 60602 ms
14:04:00,328 INFO [AutoDeployDir:167] Processing HelloStruts2-portlet-6.0.6.1.war
14:04:00,375 INFO [PortletAutoDeployListener:71] Copying portlets for E:\liferaytomcat\liferay-portal-6.1.0-ce-b4\deploy\HelloStruts2-portlet-6.0.6.1.war
14:04:00,484 INFO [PortletAutoDeployListener:81] Portlets for E:\liferaytomcat\liferay-portal-6.1.0-ce-b4\deploy\HelloStruts2-portlet-6.0.6.1.war copied successfully. Deployment will start in a few seconds.

Сервер занимает много времени после этой строки

Ответы [ 3 ]

3 голосов
/ 09 января 2012

В последних версиях JRebel включил некоторые специфичные для Liferay интеграции, поэтому теперь он работает еще плавнее http://www.liferay.com/community/projects/jrebel/overview

1 голос
/ 15 февраля 2012

Удалите фильтры, не используемые вашим приложением.В свойствах портала инициализировано более 25 фильтров.

1 голос
/ 29 декабря 2011

Нет другого способа распространить изменения в portlet.xml, liferay-portlet.xml и других дескрипторах развертывания на портал, кроме фактического повторного развертывания приложения (как вы описали, это занимает довольно много времени).

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

Существует также инструмент под названием jRebel, который может сделать то же самое для классов Java и конфигурации инфраструктуры.Работает без проблем с весной и весной MVC.Struts также указан в поддерживаемых фреймворках, поэтому он тоже должен работать.После правильной настройки сценарий выглядит следующим образом:

измените java-файл ctrl + s, чтобы сохранить и скомпилировать файл (ваша IDE должна это поддерживать) перезагрузить браузер (jrebel автоматически подхватывает изменения в файлах классов и перезагружает ихнемедленно).

К сожалению, jRebel не является бесплатным.

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

Надеюсь, это поможет ..

...