在pom.xml中引入一个依赖,maven会自动导入这个依赖的依赖,方便的同时也会形成jar包冲突:api
(1)A、B都依赖C,咱们导入A(自动导入C)、B(自动导入C),maven自动导入了2个C,到底使用哪一个C?这2个C冲突了,maven不知道该用哪一个。tomcat
(2)A依赖C,咱们导入A(自动导入C),咱们不知道已经有了C,本身又手动导了一个C。jsp
咱们直接导入的依赖叫作直接依赖,好比A;maven自动导入的直接依赖的依赖,叫作间接依赖,好比C。maven
解决费方式:测试
还多是由于jar包的做用域:xml
(3)好比要使用HttpServletRequest,须要导入servlet-api.jar、jsp-api.jar,这样写代码时才有相应的代码提示,IDEA才不会提示红色。blog
但测试、运行时要部署到tomcat上,tomcat自带了servlet-api.jar、jsp-api.jar,冲突了,tomcat不知道要用哪一个。作用域
解决方式:部署
可查看项目的依赖关系图:servlet