今天开始学习的时候发现出现了一个错误
查了一下百度翻译
因为用maven进行的导包
看一眼配置文件pom
发现我给servlet没有加约束,默认是 compile约束
compile约束表示dependency可以在任意阶段时使用,并且会发布到项目
而tomcat中已经提供好了关于servlet的jar包,所以因该在打完包之后把servlet的jar包排除出去
就需要用到provided约束
而provided约束只能用在测试阶段和编译阶段时使用
所以加上一个<scope>provided</scope>
问题就可以解决了
像<scope>还有另外的两个约束
runtime约束表示dependency只作用在测试阶段和运行阶段,不做用在编译阶段
test约束表示只作用在测试阶段