Java Tomcat 7.0.42与grails应用程序崩溃

Java Tomcat 7.0.42与grails应用程序崩溃,java,grails,web-applications,tomcat7,Java,Grails,Web Applications,Tomcat7,我在tomcat 7.0.42中有一个例外。我正在做的唯一一件事就是在webapps目录中部署一个grails应用程序。我没有更改配置中的任何内容。。。直到最近,tomcat还工作得很好 我真的还没有发现是什么在我的战争和tomcat之间制造麻烦 我在档案中搜索,发现一些罐子可能会冲突。我发现WEB-INF中存在的jetty.jar和servlet.jar可能是冲突的根源,但在我的WEB-INF目录中找不到它们 这是我的stacktrace: org.apache.jasper.JasperEx

我在tomcat 7.0.42中有一个例外。我正在做的唯一一件事就是在webapps目录中部署一个grails应用程序。我没有更改配置中的任何内容。。。直到最近,tomcat还工作得很好

我真的还没有发现是什么在我的战争和tomcat之间制造麻烦

我在档案中搜索,发现一些罐子可能会冲突。我发现WEB-INF中存在的jetty.jar和servlet.jar可能是冲突的根源,但在我的WEB-INF目录中找不到它们

这是我的stacktrace:

org.apache.jasper.JasperException: java.lang.ClassCastException: org.apache.jasper.el.ELContextImpl cannot be cast to org.apache.jasper.el.ELContextImpl
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:549)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
    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)

如果不是因为JAR冲突,这里有人知道这个问题的原因吗?

在类路径中搜索类
org.apache.jasper.el.ELContextImpl
。我相信你会找到不止一个条目。这个类也可能位于tomcat libs目录中。如果没有找到,也要检查那里

下面列出了一些可以帮助您分析类路径的工具。他们中的一些人需要maven

希望这有助于追踪您的问题

运行时的另一个选项是执行以下操作:


使用jvm选项
-verbose:class
启动tomcat。这将打印出加载的所有类以及它们来自的jar。Grep for
ELContextImpl
查找jar。移除jar并查看它是否再次工作。

您的JSP文件可能有一个无效的EL表达式。检查语法!在你的grails应用程序上做一个依赖性报告,我怀疑你可能在编译范围而不是构建范围内有什么东西在拉着
tomcat
grails插件,这会在你构建war时把tomcat JAR放在你的WEB-INF/lib中。你找到解决问题的方法了吗?对于其他处于相同情况的人,请接受答案或提供你自己的答案。对不起,我让这篇文章没有答案。我在netbeans中找到了一个使用尴尬的tomcat的解决方案。我试着用你给我的工具来分析代码,但是什么都没有,我也移除了一些罐子,但是没有改变任何东西!谢谢瓦迪莫的帮助。我在apache/lib中搜索了jar,但没有找到多个条目。我所做的是:查找path/to/libs-name'*.jar'-exec grep-Hls ClassName{}\;