У меня есть несколько модулей maven для моего весеннего MVC и спящего режима.Встраиваемый причал с пружиной MVC
Моя раскладка выглядит следующим образом:
/myapp-web
/myapp-web/src/main/java
/myapp-web/src/main/webapp
/myapp-web/src/main/webapp/web-inf
/myapp-web/src/main/webapp/web-inf/web.xml
/myapp-web/src/main/webapp/web-inf/web-context.xml (spring wiring code etc)
/myapp-web/src/main/webapp/web-inf/config/hibernate.cfg.xml
/myapp-web/src/main/webapp/assets/... (folder for css, javascript, images)
/myapp-web/src/main/webapp/views (folders with freemarker .ftl files)
Мой pom.xml:
..
<packaging>war</packaging>
..
<dependency>
<artifactId>jetty-server</artifactId>
<groupId>org.eclipse.jetty</groupId>
<version>${jetty-version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-servlet</artifactId>
<version>${jetty-version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-webapp</artifactId>
<version>${jetty-version}</version>
</dependency>
У меня есть еще один экземпляр встроенного причалу, что я успешно установить и я могу бежать. Я даже настраиваю сценарий запуска/остановки, поэтому он работает на Ubuntu. Это не было приложение mvc для Spring, поэтому было проще, так как в нем нет файла web.xml и т. Д. Я создал файл /assembly/assembly.xml, мне нужно сделать это для приложения spring mvc также?
Затем я добавил это к моему pom.xml плагин раздела:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven-assembly-plugin}</version>
<configuration>
<descriptors>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
</configuration>
</plugin>
<!-- jar plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven-jar-plugin}</version>
<configuration>
<archive>
</archive>
</configuration>
</plugin>
<!-- jetty plugin -->
<plugin>
<!-- This plugin is needed for the servlet example -->
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>${jetty-version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>com.myapp.HttpServer</mainClass>
</configuration>
</plugin>
мне нужно сделать то же самое для моей Spring MVC приложения?
Я нашел несколько threads на stackoverflow, но я не могу понять муравьиную часть, поскольку я не использую муравьев. Я также не уверен, как подключить его к работе с maven:
Я удивлен, что нет ни одной хорошей справки о том, как это сделать, кроме примера с одним сервлетом.
Должен ли я создать файл /assembly/assembly.xml для этого, или для веб-приложения все по-другому?
Может кто-нибудь объяснить это мне шаг за шагом, чтобы я мог заставить это работать? Пожалуйста, спросите, и я буду размещать все необходимое для моего проекта, но я думаю, что я покрыл все, что моя текущая среда имеет, то есть:
- с использованием нескольких настроек с Maven
- Spring MVC
- зимует
- FreeMarker для шаблонов структура
- папки приведена выше
цель состоит в том, чтобы иметь возможность развернуть эту ва r, создайте сценарии запуска/остановки, чтобы я мог развернуть это на своем сервере и запустить/остановить экземпляр причала.
Если вы придерживаетесь стандартного макета проекта maven (что вам кажется), команда maven jetty: run подберет ваше веб-приложение из соответствующего пути вместо загрузки .war. В простых проектах, которые я использовал, не было никакой дополнительной конфигурации и было достаточно для тестирования и разработки. Если вам нужно развернуть произведенное.войну, посмотрите [плагин для груза] (http://cargo.codehaus.org/Maven2+plugin)? – Pyranja
Я не собираюсь запускать пристань локально, используя команду mvn jetty: run, это для развертывания. – Blankman