当前位置: 代码迷 >> 综合 >> 使用Activiti时,关于Could not initialize class org.apache.jasper.el.ELContextImpl问题
  详细解决方案

使用Activiti时,关于Could not initialize class org.apache.jasper.el.ELContextImpl问题

热度:46   发布时间:2024-01-13 16:53:53.0

启动tomcat报错:

java.lang.NoClassDefFoundError: Could not initialize class org.apache.jasper.el.ELContextImpl

关于这个问题:

运行页面只要有EL表达式的都报Could not initialize class org.apache.jasper.el.ELContextImpl这个错误

凭经验讲,肯定是哪里的jar和tomcat的冲突了,jar冲突的几率很大。

于是只能一点一点排查,每个pom依赖都试,删除再试,最后找到了。

问题在activiti工作流里面引用的jar冲突了。不管是springboot还是普通springmvc项目,如果用activiti6.x版本都会用到juel-spi这个东西

查找过程:eclipse开发工具  ctrl+鼠标点击activiti那个依赖,相关activiti依赖的页面。

第一种解决方式:tomcat换成7和activiti换成5.x

第二种:排除juel-spi这个和tomcat自身的jar的冲突

<!-- activiti --><dependency><groupId>org.activiti</groupId><artifactId>activiti-spring-boot-starter-basic</artifactId><version>6.0.0</version><exclusions><!-- 排除juel-spi,会和tomcat下的servlet、jsp等jar有冲突 --><exclusion><groupId>de.odysseus.juel</groupId><artifactId>juel-spi</artifactId></exclusion></exclusions></dependency>

 

  相关解决方案