色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

java - 關于maven tomcat啟動錯誤

瀏覽:97日期:2024-01-25 15:59:38

問題描述

maven(命令為 clean tomcat7:run)啟動tomcat提示錯誤:org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer

自己認為是版本沖突問題,但是不知道怎么解決。查了下,有人說是pom.xml中servlet jar包部分的<scope/>應該設為provided,但自己確實是這么配置的。下面是pom.xml部分內容:

<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <scope>provided</scope></dependency><dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <scope>provided</scope></dependency>

各位有誰遇到過或者對此有個人見解,麻煩給予點撥,謝謝!

----------------------Update-------------------------排錯能力實在有限,還是沒能解決問題。貼一下比較完整的信息吧:

這是啟動時的錯誤信息:

Caused by: java.lang.ClassCastException: org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer at org.apache.catalina.startup.ContextConfig.getServletContainerInitializer(ContextConfig.java:1670) at org.apache.catalina.startup.ContextConfig.getServletContainerInitializers(ContextConfig.java:1652) at org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1562) at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1270) at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:878) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:376) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5322) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 6 more

根據以上信息我猜測是tomcat本身的api和springframework.web包有沖突(spring版本4.2.4.RELEASE)spring-web含有一個javax.servlet-api的依賴:

<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope></dependency>

自己pom.xml配置的servlet是

<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>${servlet-api.version}</version> <!--引用2.5--> <scope>provided</scope></dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>${jsp-api.version}</version> <!--引用2.0--> <scope>provided</scope></dependency>

tomcat使用的是:

<groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <configuration> <path>/</path> <port>8080</port></configuration>

本來想換tomcat8試試的,但是好像也沒有tomcat8-maven-plugin試過不包含其它jar包也還是如此,所以該如何是好呢?(╥╯^╰╥)

問題解答

回答1:

指定下 Servlet API 的版本試試看:

<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope></dependency><dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope></dependency>回答2:

包沖突了,查看下其他引用的jar包中是否有servlet-api,用exclusion標簽去掉servlet-api

回答3:

應該是 spring 依賴的 servlet api 包跟 tomcat 7 自帶的 servlet jar 包沖突了吧。把有依賴到 servlet api 的pom 都排除掉。可以用 exclusion標簽。

回答4:

1.有可能是與其他的包中有沖突2.我猜你應該用的不是springboot吧,如果是springboot,它本身是包含完整的tomcat的,所以會報錯.記得不錯貌似是會報錯的.

回答5:

java - 關于maven tomcat啟動錯誤你看看是不是有包沖突,intellij是在這里有個按鈕(有問題的好像是紅色的線)eclipse自己百度下,應該差不多,如果有沖突嘗試exclusion排除掉這里有個和你類似的,也是<scope>provided</scope>,但是還是需要exclusionhttp://powertech.iteye.com/bl...

或者把servlet-api換成3.1.0的試試 鏈接描述stackoverflow上有3.0.1這個版本也出現問題的

標簽: java
相關文章:
主站蜘蛛池模板: 久久综合88 | 中文字幕精品一区二区2021年 | 中文字幕日韩精品中文区 | 在线另类视频 | 久久福利青草精品资源站免费 | 久久久久久久久影院 | 91最新地址永久入口 | 欧美国产一区二区 | 欧美成人爽毛片在线视频 | 国产真实一区二区三区 | 日韩一级片免费看 | 黑人一级片| 久久精视频 | 精品一区二区三区视频 | 久草在线看 | 男人在线天堂 | 国产欧美综合在线一区二区三区 | 久久精品国产欧美成人 | 日韩成人三级 | 国内精品一区二区在线观看 | 日韩欧美毛片免费观看视频 | 亚洲精品无码不卡在线播放he | 色拍自拍亚洲综合在线 | 成人午夜在线观看 | 亚洲视频成人 | 国产精品特级毛片一区二区三区 | 欧美成人精品动漫在线专区 | 手机看片手机在线看片 | 性感毛片 | 欧美日韩精品一区二区三区 | 亚洲综合一区二区不卡 | 欧美在线视频一区二区 | 亚洲男人第一天堂 | 国产一区二区三区免费 | 久草久 | chineseoldman色老头videos | 91久久国产| 亚洲精品综合一区二区三区在线 | 国产精品久久久久国产精品 | 男女免费观看在线爽爽爽视频 | 亚洲天堂免费在线 |