学习笔记:maven依赖servlet-api与Tomcat冲突

@TOCmaven依赖servlet-api与Tomcat冲突
Tomcat是一个web服务器的拓展,我们常常使用的servlet就是一种web服务器,在使用Maven导入servlet依赖时,我们可能会用到一个servlet-api的依赖jar包,然而导入这个jar包后,我们会发现启动tomcat后,会发生冲突,为什么呢?
我们先说servlet,百度上说servlet是一种用java语言编写的,具有独立于平台与协议的特性,可以交互式的浏览和生成数据,动态生成数据,从页面上接受下来的请求会封装在HttpServletRequest对象中,而发送出去的响应则封装在HttpServletResponse对象中,然而Tomcat是web服务器的拓展,而且还是servlet的容器,在Tomcat的lib包中就包括了servlet-api,所以解决办法是

 <scope>provided</scope>

这个的意思是在程序编译和测试时来使用,运行时不使用

<!--servlet依赖包-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <scope>provided</scope>
        </dependency>

文章主要以学习笔记为目的,参考文章写的超详细
以及csdn道友

你可能感兴趣的:(java)