eclipse 中创建maven 工程后pom.xml 报错 :web.xml is missing and failOnMissingWebXml is set to true
创建maven war 工程后,eclipse 中的 pom.xml 报错 web.xml is missing and <failOnMissingWebXml>
,所下图所示:
原因:
创建maven 创建的 war 工程没有 web.xml
文件。
从 servlet3.0开始,在servlet 项目中 ,Servlet、Filter、Listener无需在web.xml中进行配置,可以通过对应注解进行配置, web.xml
可以不存在;
解决办法:
1; 创建 web.xml
文件,xml 内容如下:
servlet 2.5:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
servlet 3.0:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" >
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
2;如果项目中确实不需要web.xml 文件时,可以使用此方法。
将光标放在 行首,快捷键 Alt + /
, 选择 Insert plugin
:
输入 war
, 列表中会出现maven-war-plugin
插件,选中添加:
添加 maven-war-plugin
后,如下:
再对 maven-war-plugin
添加配置,如下:
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
3;如果报错不消失,可以选中项目,右键 --> Maven --> Update Project