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"
遇到 java.lang.LinkageError: loader constraint violation
这种错误通常与Java中的类加载器(ClassLoader)问题有关。具体来说,这个错误表明在同一个类加载器环境中,尝试用不同的类定义来加载同一个类名(在这个例子中是javax/servlet/http/HttpServletRequest
)。
这种情况在Web应用程序中尤其常见,尤其是当使用了多个库或框架,而这些库或框架之间可能存在依赖冲突时。
解决办法:
在serlvet依赖后面添加下面的代码 <scope>provided</scope>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
添加后重启项目就可以解决了