2010-08-10 1 views
2

Я разрабатываю веб-сайт war/java, который построен через maven.Java maven development slow

В настоящее время я должен внести изменения ... скажите maven, чтобы их построить ... затем разверните в Tomcat. Это около 40seconds. Поэтому каждое изменение, которое я делаю, мне нужно подождать> = 40 секунд, чтобы увидеть изменение.

Это очень расстраивает, поэтому я попытался ускорить развертывание. Я развернул сайт через maven с войной: взорвался. Теперь я редактирую файлы в формате «развернутый». Проблема в том, что мне нужно будет переместить эти изменения обратно в исходное местоположение, чтобы перейти в наш источник управления.

Так кто-нибудь написал сценарий для «разворачивания» изменений на сервере, тщательно указывая их обратно туда, где их ожидает maven, или нашел другой способ, который я могу мгновенно увидеть мои изменения в веб-браузере. Восстановление из источника каждый раз - не самое интересное решение.

ответ

5

В настоящее время я должен внести изменения ... скажите maven, чтобы их построить ... затем разверните на Tomcat. Это около 40 секунд. Поэтому каждое изменение, которое я делаю, мне нужно подождать> = 40 секунд, чтобы увидеть изменение.

Это, по-моему, неправильный способ использования Maven.

Либо используйте что-то светлое, как jetty:run (и подключите удаленный отладчик Eclipse для включения hotswap), см. Configuring Jetty, Maven, and Eclipse together with Hot Swap.

Или используйте Eclipse WTP и разверните проект на сервере Tomcat внутри Eclipse (ваш проект можно распознать как проект Dynamic Web, независимо от того, используете ли вы m2eclipse или плагин Maven Eclipse).

+1

Eclipse WTP - это способ пойти на Tomcat dev. Если вы запустите сервер в отладке, изменения будут применены мгновенно. В обычном режиме приложение перезапускается (несколько секунд). – h3xStream

+1

Проекты Maven имеют совершенно другую файловую структуру, чем проекты Eclipse WTP. Объясните, как можно использовать внутренний экземпляр Tomcat Eclipse для достижения этого без изменения структуры папок Maven (src/main/java, src/test/java и т. Д.). –

1

Вы пробовали JavaRebel?

http://www.zeroturnaround.com/jrebel/

+0

Я отдам вам это. Я бы предпочел не участвовать в дополнительных лицензиях для чего-то (IMHO), который уже должен существовать для разработки WAR. – Drew

+0

JRebel может быть полезна, если ваше приложение требует времени для перезапуска (длинные инициализации). – h3xStream