Получение JRebel для работы с 'mvn tomcat: run'

Мне было интересно, может ли кто-нибудь указать мне на то, как заставить JRebel работать, когда я запускаю "mvn tomcat: run" из командной строки. Я могу заставить JRebel работать в моей IDE (IntelliJ IDEA), но он чувствует себя немного неуклюжим для работы внутри IDE. Когда я запускаю тесты, мне не нравится, когда рядом с ним работает другой процесс - назовите его привычкой.

Более того, хотя у меня были некоторые блокировки сервера с JRebel, когда я пытаюсь это сделать... и я не хочу, чтобы IDE зависала в результате. Я обрабатывал процесс вручную, и управление возвращается в IDEA... но было бы лучше, если бы он не работал в IDEA вообще.

Я пробовал это, но я не нашел, как включить JRebel с плагином tomcat.

Спасибо

Ответы

Ответ 1

не задает системную переменную MAVEN_OPTS?

Просто и пример:

  • mvn archetype: generate -DgroupId = com.mycompany.app -DartifactId = my-webapp -DarchetypeArtifactId = maven-archetype-webapp
  • cd my-webapp
  • в pom.xml вашего примера добавьте следующее:
    < & плагин GT;
      < идентификатор_группа > org.zeroturnaround </идентификатор_группа >
      < артефакт > JRebel-Maven-плагин </артефакт >
      & Л; расстрелы >
      & Л; исполнение >
        < & ID GT; генерируют-бунтарем-XML </ID>
        & Л; фаза > процесс-ресурсы и л;/фазы >
        < & цели GT;
          < & цель GT; генерируют </& цели GT;
        < &/цели; GT
      </выполнение >
      < &/расстрелы GT;
    </плагин >
  • установить MAVEN_OPTS = -javaagent:/path/to/jrebel.jar
  • mvn tomcat: run

В консоли вы увидите сообщение от JRebel следующим образом:

JRebel: каталог "C:\projects\my-webapp\target\classes" будет отслеживаться для изменений.
JRebel: каталог "C:\projects\my-webapp\src\main\webapp" будет отслеживаться для изменений.

Ответ 2

Если вы выполняете tomcat: запустите в eclipse и установите плагин JRebel eclipse, вы также можете просто включить JRebel в конфигурации запуска.

Ответ 3

Когда я попробовал это сегодня. Я не видел, чтобы мои изменения отражались во время выполнения. Я должен был применить приложение, чтобы увидеть, как изменения влияют на него.