我可以使用Jetty来部署没有web.xml的项目吗?

时间:2013-11-01 23:45:18

标签: java spring maven jetty web.xml

我有一个Spring-Maven项目,我使用Java类配置,没有web.xml。当我用“mvn jetty:run”部署它时,我有这个错误“ web.xml不存在于... / src / main / webapp / WEB-INF / web.xml ”。< / p>

这是我在pom.xml中定义的插件。

        <plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>maven-jetty-plugin</artifactId>
            <version>6.1.10</version>
            <configuration>
                <scanIntervalSeconds>10</scanIntervalSeconds>
                <stopKey>foo</stopKey>
                <stopPort>9999</stopPort>
            </configuration>
            <executions>
                <execution>
                    <id>start-jetty</id>
                    <phase>pre-integration-test</phase>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <configuration>
                        <scanIntervalSeconds>0</scanIntervalSeconds>
                        <daemon>true</daemon>
                    </configuration>
                </execution>
                <execution>
                    <id>stop-jetty</id>
                    <phase>post-integration-test</phase>
                    <goals>
                        <goal>stop</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

当我从Jetty文档中读到时,我们可以在jetty:run目标的配置中定义web.xml位置。我们还可以配置它,以便Jetty将我的WebConfig类用作web.xml吗?

1 个答案:

答案 0 :(得分:3)

您正在使用不支持Servlet 3.0规范的Jetty版本,因此必须使用web.xml。使用新的Jetty版本来支持Servlet 3.0(和xml less配置)。

切换到插件的eclipse版本

<plugin>
  <groupId>org.eclipse.jetty</groupId>
  <artifactId>jetty-maven-plugin</artifactId>
  <version>9.0.5.v20130815</version>
</plugin>

Jetty / Eclipse documentation中的更多信息。