[英]Apache CXF geronimo-servlet_3.0_spec-1.0.jar - jar not loaded having Tomcat's servlet jar
我遇到一個問題,我的項目中包含Apache CXF jar(我使用Eclipse作為IDE),運行Tomcat之后,我得到以下信息:
INFO: validateJarFile(/home/USER/programming/tools/apache-tomcat-7.0.50/webapps/abosi/WEB-INF/lib/geronimo-servlet_3.0_spec-1.0.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
這是因為Apache CXF將geronimo-servlet_3.0_spec-1.0.jar
作為應用程序的一部分部署到WEB_INF/lib
目錄,但是Tomcat已經在TOMCAT_ROOT/./lib/servlet-api.jar
實現了它的servlet實現。
我該如何預防呢?
您可以通過在pom.xml中明確排除geronimo jar來擺脫此消息,如下所示:
....
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-bundle</artifactId>
<version>3.0.0-milestone2</version>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_3.0_spec</artifactId>
</exclusion>
</exclusions>
</dependency>
....
希望這可以幫助!
通過從“ Project Properties
->“ Java Build Path
順序和導出”選項卡中刪除Apache CXF,我設法解決了此問題
和取出.jar
期從$CATALINA_HOME/bin/APP_NAME/lib/geronimo-servlet_3.0_spec-1.0.jar
和$CATALINA_HOME/webapps/abosi/WEB-INF/lib/activemq-all-5.9.0.jar
編輯
在嘗試並部署了幾次之后,看來這不是解決方案。 這些.jars
仍顯示在此目錄中。 有任何想法嗎 ?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.