org.apache.catalina.loader.WebappClassLoaderBase loadClass,Could not load org.apache.zookeeper.Clien

 

1、错误日志

tomcat的日志中报的错误,具体原因未知,网络搜索有的说是zookeeper连接数太多导致连接失败导致的

Jul 20, 2020 12:00:00 AM org.apache.catalina.loader.WebappClassLoaderBase loadClass
INFO: Illegal access: this web application instance has been stopped already.  Could not load org.apache.zookeeper.ClientCnxnSocketNIO.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1777)
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735)
        at ch.qos.logback.classic.spi.PackagingDataCalculator.loadClass(PackagingDataCalculator.java:199)
        at ch.qos.logback.classic.spi.PackagingDataCalculator.bestEffortLoadClass(PackagingDataCalculator.java:224)
        at ch.qos.logback.classic.spi.PackagingDataCalculator.computeBySTEP(PackagingDataCalculator.java:133)
        at ch.qos.logback.classic.spi.PackagingDataCalculator.populateUncommonFrames(PackagingDataCalculator.java:108)
        at ch.qos.logback.classic.spi.PackagingDataCalculator.populateFrames(PackagingDataCalculator.java:100)
        at ch.qos.logback.classic.spi.PackagingDataCalculator.calculate(PackagingDataCalculator.java:58)
        at ch.qos.logback.classic.spi.ThrowableProxy.calculatePackagingData(ThrowableProxy.java:100)
        at ch.qos.logback.classic.spi.LoggingEvent.<init>(LoggingEvent.java:128)
        at ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:468)
        at ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java:424)
        at ch.qos.logback.classic.Logger.warn(Logger.java:753)
        at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1168)

 

2、解决方式

 

使用kill命令关闭tomcat进程

1、查看tomcat进程: ps -ef| grep tomcat

2、杀死tomcat进程: kill -9 xxx


3、再次重启tomcat,查看日志,不在报错。

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这是一个Java异常信息,通常出现在Tomcat服务器中。它表示在Web应用程序类加载器中加载类时出现了错误。可能是由于类文件不存在、权限不足或类文件已经被其他进程占用等原因导致的。需要进一步查看异常信息和日志文件来确定具体原因。 ### 回答2: org.apache.catalina.loader.webappclassloaderbase.loadclass是Tomcat中的一个类加载器方法。它用于从Web应用程序的类路径中加载类文件。 在Tomcat中,webappclassloaderbase是一个类加载器的基础实现,它负责从Web应用程序的类路径中加载类文件。loadclass方法是其中的一个实现,它允许根据给定的类名加载相应的类。 loadclass方法的作用是根据类名在Web应用程序的类路径中搜索并加载对应的类文件。它首先会在缓存中查找该类是否已经被加载过,如果没有则会尝试从Web应用程序的类路径中加载该类文件。 如果找到了对应的类文件,则会将该类加载到内存中,并返回对应的Class对象。如果未找到该类文件,则会抛出ClassNotFoundException异常。 这个方法在Web应用程序中的Servlet容器中常用,例如Tomcat。它可以帮助在运行时动态加载类文件,实现类的实例化、调用以及处理相关的任务。 总之,org.apache.catalina.loader.webappclassloaderbase.loadclass是Tomcat中负责从Web应用程序的类路径中加载类文件的方法。它对于动态加载类文件、实例化和调用类以及处理相关任务非常有用。 ### 回答3: org.apache.catalina.loader.webappclassloaderbase.loadclass是一个Java类加载器的方法,它是Tomcat服务器中的一个类加载器,用于从Web应用程序的类路径中加载类。这个方法的作用是在Tomcat服务器上加载指定名称的类。 当Tomcat服务器接收到一个客户端的请求时,它需要加载相应的类来处理这个请求。loadclass方法是一个常用的加载类的方法之一。它接收一个类的名称作为参数,然后尝试从Web应用程序的类路径中找到并加载这个类。 这个方法首先检查是否已经加载过这个类。如果已经加载过,它会返回这个已加载的类。否则,它会调用父类加载器的loadclass方法来尝试加载这个类。如果父类加载器加载不到,它会调用自身的findclass方法来从Web应用程序的类路径中查找并加载这个类。 使用这个方法要注意一些事项。首先,参数中的类名称必须是全限定名,包括包名和类名。其次,需要保证这个类的字节码文件在Web应用程序的类路径中能找到,通常是放在WEB-INF/classes或WEB-INF/lib目录下。 总之,org.apache.catalina.loader.webappclassloaderbase.loadclass是一个用于Tomcat服务器的类加载器方法,用于从Web应用程序的类路径中加载指定名称的类。它的作用是为了处理客户端请求而加载所需要的类。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值