Java 侦听器的Tomcat ClassNotFoundException

Java 侦听器的Tomcat ClassNotFoundException,java,tomcat,classnotfoundexception,Java,Tomcat,Classnotfoundexception,我在包nl.hu.tho6.listener中有一个名为ContextListener的侦听器。部署tomcat时会出现严重错误:listenerStart错误。在localhost日志中,我发现tomcat为listener类抛出了一个ClassNotFoundException web.xml如下所示 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSc

我在包nl.hu.tho6.listener中有一个名为ContextListener的侦听器。部署tomcat时会出现严重错误:listenerStart错误。在localhost日志中,我发现tomcat为listener类抛出了一个ClassNotFoundException

web.xml如下所示

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
         version="2.4">

    <listener>
        <listener-class>nl.hu.tho6.listener.ContextListener</listener-class>
    </listener>

</web-app> 

我希望错误消息是正确的,除非您有理由相信不是这样

我会查看war文件并检查类是否存在,例如:

jar -tf mywebapp.war | grep ContextListener

如果没有显示,请检查您的构建过程-您没有提到您是否正在使用ant、maven或其他东西,但这将是开始的地方。

根据注释,该文件位于错误的文件夹中。
类应该在war/WEB-INF/classes/nl/hu/tho6/listener/not in war/WEB-INF/classes/production/tho6/nl/hu/tho6/listener/

您能显示整个异常吗?您是在运行tomcat insinde IntelliJ还是单独运行?另外,项目的git存储库位于类所在的位置?jar@maslan这是什么意思?编译后,类位于war/WEB-INF/classes/production/THO6/nl/hu/THO6/listener/中,当我运行ANT构建脚本时,它将war文件打包到THO6.war中,然后将其部署到tomcat服务器。如果侦听器类位于文件夹war/WEB-INF/classes/nl/hu/THO6/listener/?中,ContextListener就在那里,编译器输出到的路径错误。我使用的是ant,但在运行之前,我必须手动编译,因为ant在IntelliJ中由于某种原因不会自动编译。@LiamdeHaas也许你应该检查ant,它会帮你编译吗?@maslan有什么建议吗?我不太了解antOk,所以告诉我你是如何编译你的源代码和构建war的?
jar -tf mywebapp.war | grep ContextListener