2012-03-15 6 views
4

Я работаю в команде разработчиков Java. Мы пишем код в Eclipse, а затем мы используем maven для построения войны. Впоследствии мы развертываем войну в Томкате.Как я могу развернуть мой проект Java?

Есть ли бесплатный способ автоматического развертывания файлов при сохранении?

Спасибо.

+0

Вы имеете в виду развертывание войны в tomcat после сборки? Вы можете использовать maven для этого. – Marcelo

+1

Ты смелый разработчик. Я был бы обеспокоен развязыванием войны. –

+0

@Marcelo в любом случае хочет записаться на автообнаружение при сохранении файла, а не нажимать каждый раз. – arvindwill

ответ

0

Если у вас есть файлы классов, вы можете поместить их в WEB-INF/classes. Это то, что вы искали?

10

JRebel дает именно это: автоматическое развертывание файлы на сохранить, используя Eclipse AND Tomcat, но вы должны платить за него.

Я рекомендую JRebel, но быстрый взгляд на бесплатные альтернативы вызывает this SO question, где кто-то предложил Dynamic Code Evolution VM в качестве аналогичного продукта.

Существует хорошая статья о различных способах горячего развертывания веб-приложений Java here, в которых также описаны некоторые из других подходов, о которых уже упоминалось.

3

Если вы хотите развернуть для тестирования на своей машине разработчика, вы должны использовать Tomcat Maven Plugin или, лучше, Maven Jetty Plugin (лучше, потому что он легче и быстрее).

Если вы хотите развернуть его на удаленном сервере, скажем, при каждой фиксации на вашем SCM вы должны использовать инструменты непрерывной интеграции, например, Jenkins или Apache Continuum.

0

Не строите с помощью maven, используйте разнесенное развертывание, чтобы статические файлы пользовательского интерфейса и JSP могли автоматически загружаться контейнером. Чтобы перезагрузить изменения в файлы классов, вы можете запустить приложение в сеансе отладки и использовать hotswap (который позволяет вам только изменения в телах методов) или преодолеть ваш спрос на бесплатное программное обеспечение и купить себе лицензию JRebel, которая может быть использована бесплатно без каких- -commercial проекты (http://social.jrebel.com)

+0

Статические файлы пользовательского интерфейса и JSP становятся неподходящими, автоматически загружаются при использовании Maven ('mvn tomcat: run' или 'mvn jetty: run') – rlovtang

+0

.это просто зависит от настройки. плагины пристани и tomcat maven читают ресурсы из исходных мест, но это не то же самое с средами на базе IDE. Embedded Jetty, будь то ваниль или плагин maven, действительно является очень хорошим решением для этой проблемы, хотя и не идеальной. –

1
  • OSGi представляет собой систему общего назначения модуль, который поддерживает горячую Сработала
  • Clojure представляет собой динамичный язык JVM, что позволяет много времени выполнения интерактивности. Clojure часто используется для «живого кодирования» - практически все может быть подвергнуто горячей замене и переопределено во время выполнения. Clojure - функциональный язык с сильным акцентом на неизменность и параллелизм, поэтому в некотором смысле имеет некоторое интересное сходство с Erlang. В Clojure есть очень хорошие веб-фреймворки, такие как Noir, которые подходят для горячего обмена веб-кодом.
  • Платформа Play Framework предназначена для включения кода горячей замены для повышения производительности, что позволяет избежать перезапуска веб-сервера). Может быть актуальным, если вы ищете в первую очередь веб-приложения с горячей заменой.
  • Большинство серверов Java-приложений, таких как JBoss, поддерживают некоторую форму «горячей» замены для веб-приложений.
Смежные вопросы