使用maven的骨架web app创建后,为了使编译通过,在pom.xml文件中引入了jsp-api,servlet-api的jar包,版本为2.0,2.5。
运行可以通过,在网页上输入地址后,产生如下错误:
发现因为maven的一键构造功能,使自己引入的jar包与maven仓库中已有的产生冲突。
解决方法:
设置自己引入的jar包的作用域:
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
**<scope>provided</scope>**
</dependency>
socpe即为作用域设置标签,provided表示仅在编译时期有效。运行时采用maven提供的。