Ответ 1
Вероятно, вам стоит взглянуть на Джаваребеля:
http://www.zeroturnaround.com/javarebel/
и этот поток здесь:
Как повысить производительность при разработке веб-приложений на основе Java EE
Какая среда веб-разработки Java лучше всего подходит для полного сокращения времени цикла сборки-развертывания?
Веб-среда разработки: JBOSS, Tomcat, Jetty? Развернуть WAR взорван? Скопировать WAR или использовать символические ссылки? Есть факторы, о которых я не знаю.
цикл сборки-развертывания. Время, затрачиваемое на проверку изменений в браузере после внесения изменений в исходный код или другие ресурсы (включая источник Java, HTML, JSP, JS, изображения и т.д.).
Я хочу ускорить свое развитие, уменьшив количество времени, которое я трачу, наблюдая за сборками Ant и контейнерами J2EE. Мне нужен опыт Ruby on Rails - или как можно ближе.
Я бы предпочел решение, которое является агностиком веб-фреймворка, однако, если конкретная структура особенно выгодна, я бы хотел услышать об этом.
Предположим, что все стандартные инструменты используются: Hibernate, Spring, JMS и т.д. Если для выполнения этой работы требуется инкубация/издевательская инфраструктура поддержки, я в порядке с этим. На самом деле, я в порядке со средой разработки, которая сильно отличается от нашей производственной среды, если она экономит мне достаточно времени.
Вероятно, вам стоит взглянуть на Джаваребеля:
http://www.zeroturnaround.com/javarebel/
и этот поток здесь:
Как повысить производительность при разработке веб-приложений на основе Java EE
JBOSS использует Tomcat для своего сервлета/JSP-механизма, чтобы мыть.
Tomcat поддерживает горячее развертывание.
Jetty довольно маленькая и запускается быстро, но не поддерживает горячее развертывание.
Eclipse - это просто среда IDE. Для этого нужен сервлет/JSP-движок. Если вам нравится IntelliJ, вы можете использовать любой сервер приложений Java EE или механизм сервлета /JSP, который вам нужен.
IntelliJ довольно быстро проглатывается, и вам не нужно останавливаться и запускать сервер при каждом восстановлении. Он работает от взорванной ВОЙНЫ, поэтому все происходит быстро.
Здание (используется для компиляции) является признаком нашего времени. Нам нужна быстрая проверка наших мыслей и наших действий. Всякий раз, когда я нахожу, что я строю много раз, это обычно признак того, что я не сосредоточен. У меня нет плана. Для меня настало время остановиться и подумать. Составьте список вещей, которые нужно сделать (это агностик в веб-среде) делают все это и проверяют их все после одной сборки.
Jboss Seam вместе с Jboss Developer Studio хорош для горячего развертывания всего, кроме EJB (SLSB, SFSB и Entities нужно передислоцировать).
Вы рассматривали Grails?
Развертывание выполняется так же быстро, как и в Google App Engine + GWT (необязательно) + плагин Eclipse.
Никогда не видел ничего быстрее.
Maven 2 и затмение. mvn eclipse: eclipse - чистая удивительность. Кроме того, WTP внутри eclipse отлично работает (и maven генерирует рабочие проекты WTP).
Я нахожу, что проекты построены разумно компилировать, разворачивать и запускать через несколько-десять секунд, что обычно прекрасно.
Пробовали ли вы использовать Eclipse Java EE, а затем сообщать об этом на сервер, управляемый Eclipse? Таким образом, Tomcat и JBOss работают очень хорошо. Также вы можете изменить код в методе, использовать Ctrl-S и обновить класс внутри сервера.
MyEclipse также очень хорошо работает.
GWT в eclipse, вероятно, самый быстрый, о котором я могу думать. Используя браузер режима размещения для своих тестов, вы можете отлаживать и изменять свой код без перезапуска. Просто нужно нажать кнопку обновления в браузере и изменения там (java, css и т.д.). Еще одна вещь заключается в том, что GWT добавляет эту же поддержку в обычные браузеры (Firefox, IE, Safari), поэтому вы можете отлаживать их внутри них одинаково. Эти изменения вступят в 2.0. См. http://code.google.com/events/io/sessions/GwtPreviewGoogleWebToolkit2.html
JRuby on Rails. Разработайте на любой платформе, которую хотите, разверните на стандартные серверы Java.
Я думаю, что лучший способ избежать длительных циклов тестирования развертывания - это писать модульные тесты для вашего кода. Таким образом, вы можете найти ошибки, не дожидаясь фаз сборки/развертывания.
Для JSP вы можете редактировать файлы JSP непосредственно в рабочей папке JBOSS:
> cd $JBOSS_HOME/server/default/tmp
> find -name myJspFile.jsp
. /tmp/vfs/automountd 798af2a1b44fc64/Jee6Demo.war-bafecc49fc594b00/myJspFile.jsp
Если вы редактируете файл в папке tmp, вы можете проверить свои изменения, просто нажав кнопку обновления браузера.