原因
由于maven有自己的tonmcat运行环境,所以免不了有jar包冲突和tomcat和jdk版本冲突的问题
原因一:jar包问题
在pom.xml文件添加依赖jar包
jsp
servlet
添加依赖范围:默认是compile Provided: 运行部署到tomcat不在需要
如果将servlet-api.jar设置为compile,打包后包含serlvet-api.jar,war包部署到tomcat跟tomcat中存在servlet-api.jar包冲突。导致运行失败。
解决办法: 把依赖范围scop改为 :Provided: 运行部署到tomcat不在需要
总结:如果使用到tomcat自带jar包,将项目中依赖作用范围设置为:provided,其他可以默认
原因二: maven自带的tomcat和本机jdk版本不一致
tomcat6.x——>jdk6
tomcat7.x——>jdk7
tomcat8.x——>jdk8
运行时选择对应的tomcat:run即可