Автообновление / автозагрузка Jetty для быстрого тестирования - PullRequest
12 голосов
/ 16 июля 2011

Из PHP я привык просто сохранять файл .php и перезагружать браузер после изменения исходного файла.Как я могу сделать это с JAVA и Jetty?Когда я сохраняю свой веб-сервис, я в настоящее время останавливаю сервер Jetty и снова запускаю его с mvn jetty:start. Какой несложный способ добраться туда, куда я хочу?

Ответы [ 3 ]

20 голосов
/ 17 октября 2012

Из командной строки:

mvn -Djetty.reload=automatic -Djetty.scanIntervalSeconds=2 jetty:run

Если вы зависите от Eclipse, убедитесь, что у вас включен Project-> Build Automatic , чтобы классы были перекомпилированы.

Я не пробовал подход с использованием файла конфигурации, но более подробную информацию о подходе Джека Мерфи можно найти здесь: http://docs.codehaus.org/display/JETTY/Maven+Jetty+Plugin

10 голосов
/ 16 июля 2011

Ну, разница между PHP и Java в том, что первый является интерпретатором, а второй - на основе компилятора (двоичный). В PHP код проверяется при выполнении, тогда как в Java вам нужно сначала скомпилировать его. В Java, когда вы используете JSP-ы, можно просто сохранить их и перезагрузить, нажав кнопку обновления в вашем браузере (если, конечно, он работает в режиме разработки). Если вы меняете классы, вам нужно перезагрузить сервер. Если вы просто меняете веб-ресурсы, вы можете просто определить переменную scanInterval для плагина Jetty Maven. Это позаботится об обновлении ваших веб-ресурсов.

[EDITED] Добавлен код из комментария Джека Мерфи ниже, чтобы он был правильно отформатирован.

<plugin>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>maven-jetty-plugin</artifactId>
    <configuration>
        <scanIntervalSeconds>2</scanIntervalSeconds>
    </configuration>
</plugin>
1 голос
/ 23 июня 2016

Поздний ответ.в IntelliJ изменение ресурса / класса / внешнего интерфейса можно обновить без перезапуска сервера, выполнив следующие действия:

1: измените раздел «При обновлении» в конфигурации сервера.enter image description here

2: Каждый раз, когда вы делали вышеуказанную модификацию.Нажмите последнюю кнопку.

enter image description here

И обновите браузер.Вот и все.

...