Может ли JRebel повторно развертывать изменения в зависимостях Maven? - PullRequest
8 голосов
/ 23 мая 2011

Итак, у меня есть многомодульное веб-приложение Maven, запущенное в eclipse и tomcat с помощью wtp.

Однако развертывание приложения занимает некоторое время: создание подмодулей, если они были изменены, и запуск приложения также занимает пару минут. Таким образом, я думаю об использовании JRebel для ускорения всего этого процесса. Но я не знаю, сможет ли JRebel действительно помочь мне. Большую часть времени я работаю в подмодулях. Поэтому изменения в зависимостях необходимо развернуть в моем работающем веб-приложении.

Я прочитал на http://en.wikipedia.org/wiki/JRebel, что обновления в JAR просто игнорируются. Это все еще правда? Я видел, что есть некоторые плагины maven для плагинов JRebel и Eclipse. Могут ли они управлять всем этим процессом, или я трачу свое время?

1 Ответ

11 голосов
/ 23 мая 2011

Информация на странице Википедии устарела

Это зависит от того, что вы хотели бы сделать. Если у вас есть подмодули, я предполагаю, что это файлы JAR, включенные в WEB-INF / lib вашего приложения? В этом случае каждый отдельный модуль должен иметь специальный файл конфигурации rebel.xml следующим образом:

myapp.war
   `- WEB-INF
       |- classes
       |     `- rebel.xml   &lt-- required to map the web app classes and resources 
       `- lib
           |- mylib1.jar
           |      `- rebel.xml  &lt-- maps mylib1.jar classes  
           |             
           |- mylib2.jar
           |      `- rebel.xml  &lt-- maps mylib2.jar classes 
           |- ...
           `- mylibN.jar

Это должно быть правильно, если вы работаете с исходным кодом ваших подмодулей. Но если вы хотите просто поменять банки, это также возможно, если вы отобразите их в rebel.xml вашего веб-приложения. Посмотрите справочное руководство для этого:

http://manuals.zeroturnaround.com/jrebel/standalone/config.html

Поскольку вы используете maven, может быть целесообразно сгенерировать файлы rebel.xml с помощью плагина JRebel maven (просто добавьте фрагмент кода в ваш pom.xml):

http://manuals.zeroturnaround.com/jrebel/standalone/config.html#maven

...