在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