2010-03-03 7 views
14

У меня есть проект Spring Roo, и я использую mvn jetty:run для запуска своего приложения. Единственная проблема заключается в том, что изменения в классах *.java не горячего развертывания, а изменения в *.jspx горячего развертывания прекрасны.hot deploy in embedded jetty

Итак, как мне настроить mvn jetty для hotdeploy для классов Java?

ответ

22

Вы должны установить scanIntervalSeconds на значение больше 0, чтобы включить его:

scanIntervalSeconds - Интервал в секундах для сканирования веб-приложение для изменения и при необходимости перезагрузить контекст. Игнорируется, если перезагрузка включена. Отключено по умолчанию. По умолчанию значение: 0.

Так Мощь конфигурация выглядит следующим образом:

<plugin> 
    <groupId>org.mortbay.jetty</groupId> 
    <artifactId>maven-jetty-plugin</artifactId> 
    <version>6.1.22</version> 
    <configuration> 
    <scanIntervalSeconds>1</scanIntervalSeconds> 
    </configuration> 
</plugin> 

После активации плагина молы Maven будет сканировать каталог, определенный в classDirecory (который указывает на ${project.build.outputDirectory} по по умолчанию - target/classes) для изменений.

Вам тогда просто нужно иметь классы компиляции IDE в target/classes (или запустить mvn compile), а Jetty перезапустит контекст при изменениях на Java-классах.

+0

Большое спасибо! :) – portoalet

+0

Есть 404 ошибки, а Jetty перераспределяет классы. Любое предложение, как их избежать? Также см. Этот вопрос: http://stackoverflow.com/questions/23343243/jetty-404-error-page-on-hot-deployment – tholu

+1

К сожалению перераспределение с нулевым временем простоя требует больших усилий в мире Java :(Edit: Will попробуйте следующее: http://www.rafaelsteil.com/zero-downtime-deploy-script-for-jetty/ – tholu

 Смежные вопросы

  • Нет связанных вопросов^_^