Maven使用Tomcat热启动问题:java.lang.LinkageError: loader constraint violation
2017-08-19 12:59
591 查看
这几天做了一个简单的javaweb的helloworld,使用了maven的依赖,并且使用了tomcat的热启动,但是每次mvn tomcat:run都会报一个错误如下:
HTTP Status 500 - java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/JasperLoader) previously initiated loading for a different type with name "javax/servlet/http/HttpServletRequest" type Exception report message java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/JasperLoader) previously initiated loading for a different type with name "javax/servlet/http/HttpServletRequest" description The server encountered an internal error that prevented it from fulfilling this request. exception javax.servlet.ServletException: java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/JasperLoader) previously initiated loading for a different type with name "javax/servlet/http/HttpServletRequest" org.apache.jasper.servlet.JspServlet.service(JspServlet.java:343) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) root cause java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/JasperLoader) previously initiated loading for a different type with name "javax/servlet/http/HttpServletRequest" java.lang.Class.getDeclaredMethods0(Native Method) java.lang.Class.privateGetDeclaredMethods(Class.java:2701) java.lang.Class.getDeclaredMethods(Class.java:1975) org.apache.catalina.util.Introspection.getDeclaredMethods(Introspection.java:127) org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:172) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) note The full stack trace of the root cause is available in the Apache Tomcat/7.0.47 logs. Apache Tomcat/7.0.47
这是由于tomcat里的jar冲突,这里困惑了我很久,我的依赖为
<dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.2</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> <scope>provided</scope> </dependency> </dependencies>
都使用了provided,按理来说,不会出现任何问题,但是今天我在用eclipse做项目时,突然想到以前的一个问题,就是我的tomcat版本换了,造成无法使用servlet-api.jar这个包.我记得是在网上找了个案例,将servlet-api.jar放到jre里的lib包下的ext文件下,果然解决了问题,这也是我造成目前的蛋疼问题,jre里的servlet-api和tomcat里的servlet-api冲突了!!!所以我立刻到java安装目录下删掉了那个servlet-api.问题解决,所以这里,如果你们也出现了类似问题,可以去找一找jre里的jar包和tomcat里的jar包是否冲突了,
相关文章推荐
- HTTP Status 500 - java.lang.LinkageError: loader constraint violation: Maven的jar包冲突解决
- 常见问题汇总 java.lang.LinkageError: loader constraint violation: when resolving interface method异常
- java.lang.LinkageError: loader constraint violation: when resolving method "org.slf4j.impl.StaticLog
- jboss5 包冲突 java.lang.LinkageError: loader constraint violation
- 异常:java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContex
- 工作流jbpm4 java.lang.LinkageError: loader constraint violation 包冲突
- java.lang.LinkageError: loader constraint violation: when resolving interface... 异常解决
- javax.servlet.ServletException: java.lang.LinkageError: loader constraint violation:when resolving interface method "javax.servlet.jsp
- java.lang.LinkageError: loader constraint violation
- 异常:java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servl
- WebLogic下运行错误java.lang.LinkageError: loader constraint violation in interface itable initialization
- 异常:java.lang.LinkageError: loader constraint violation: when resolving interface method
- exception is java.lang.LinkageError: loader constraint violation: loader
- WebLogic发布点Activate Changes时候出错:java.lang.LinkageError: loader constraint violation: loader
- java.lang.LinkageError: loader constraint violation: when resolving interface method
- 异常:java.lang.LinkageError: loader constraint violation: when resolving interface method
- javax.servlet.ServletException: java.lang.LinkageError: loader constraint violation: when resolving
- java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.
- weblogic 启动报错 java.lang.LinkageError: loader constraint violation in interface itable initialization
- 异常:java.lang.LinkageError: loader constraint violation: when resolving interface method