Как запустить Jetty с JRebel в Eclipse?

Я использую плагин Jetty Maven в Eclipse для развертывания моего приложения. Это часть pom.xml:

        <plugin>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>9.2.5.v20141112</version>
            <dependencies>
                <dependency>
                    <groupId>org.ow2.asm</groupId>
                    <artifactId>asm</artifactId>
                    <version>5.0.2</version>
                </dependency>
                <dependency>
                    <groupId>org.ow2.asm</groupId>
                    <artifactId>asm-commons</artifactId>
                    <version>5.0.2</version>
                </dependency>
            </dependencies>
            <configuration>
                <scanIntervalSeconds>2</scanIntervalSeconds>
                <stopKey>stop</stopKey>
                <stopPort>9999</stopPort>
            </configuration>
        </plugin>

Я также установил плагин JRebel в Eclipse. Итак, как я могу запустить свой джет-сервер с JRebel?

3 ответа

Решение

К счастью, я нашел ответ на странице конфигурации Maven (где я называю jetty:run), и он работает. Для тех, кому это тоже понадобится, и используйте плагин JRebel Eclipse, вот ответ:

(Я все еще был бы признателен, если бы кто-нибудь знал лучший способ. Может быть, в pom.xml, в конфигурации jetty.maven.plugin?)

Вам нужно указать JRebel в качестве аргумента JVM. Поскольку Jetty запускается в том же процессе JVM, что и Maven, как только Maven узнает, что у вас настроена Jetty, уже слишком поздно.

У вас есть два варианта в такой ситуации

  1. Передайте аргумент Maven, и поскольку Jetty запускается в том же процессе, агент JRebel будет подключен. Ты можешь использовать MAVEN_OPTS переменная окружения для этого.
  2. использование jetty:run-forked, Он создает отдельный процесс JVM для Jetty и позволяет задавать аргументы через <jvmArgs/> Вариант конфигурации.

Установите JRebel для затмения с помощью eclipse Marketplace(Справка> Eclipse Marketplace) и перезапустите затмение.

После того, как вы создали проект maven и настроили jetty-сервер, щелкните проект правой кнопкой мыши, и теперь вы должны увидеть опцию JRebel в контекстном меню. Нажмите JRebel > Add Jrebel Nature

Jrebel Eclipse плагин

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

Вы также можете добавить природу JRebel в проект, выполнив это,

Help > JRebel Configuration > Projects Tab > Other Projects > Demo_Project

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

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