ERROR:org.xml.sax.SAXParseException;lineNumber: 9; columnNumber: 6;不允许有匹配 "[xX][mM][lL]"的处理指令目标。
出现这个错误是因为web.xml文件配置错误,错误原因可能有两个,任何一个出错,都会出现上述的插件错误:
原因一:自动生成的Maven项目配置文件web.xml有如下配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems,Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>……</web-app>
但是自动生成的DOCTYPE 默认2.3的版本,会自动关闭EL表达式语言,不支持该语言,所以要替换成2.4的版本,所以将上述代码替换成如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:web="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
……
</web-app>
原因二:配置文件语言书写很严格,在刚开始的地方必须服从默认代码,不要添加自己的注释内容,可以在其他地方添加注释,如下所示内容会出错:
应该将开头注释部分删掉,首行直接默认书写xml文件的版本和编码信息:<?xmlversion="1.0"encoding="UTF-8"?>