【发布时间】:2016-01-17 13:21:59
【问题描述】:
我有 Spring MVC 应用程序,除了 pom.xml(完全注释驱动)之外没有 xml。我想构建战争并将应用程序部署到 tomcat 服务器。我已经包含了 maven 插件:
<build>
<finalName>app</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
这是我的 MvcInitializer 类:
public class MvcInitializer extends
AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[] { MvcConfig.class };
}
@Override
protected Class<?>[] getServletConfigClasses() {
return null;
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
}
当我使用带有目标“包”的 maven 构建时,出现以下错误:
Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode)
我需要做什么才能获得可以在 tomcat 服务器中运行的有效 war 文件?
顺便说一句,我可以在 IDE 中的 Tomcat 中运行我的应用程序,但我想部署它。
【问题讨论】:
-
如果您有更新的应用程序,我强烈建议您使用带有 Spring Boot 的嵌入式容器(如果可行的话)。
-
你不需要 web.xml
标签: java spring maven spring-mvc