信息:非法访问:此Web应用程序实例已停止。无法加载java.net.InetAddress

50

我遇到了这种异常,有人能帮我解决这个问题吗?

java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1566)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
at org.quartz.utils.UpdateChecker.getClientId(UpdateChecker.java:149)
at org.quartz.utils.UpdateChecker.buildParamsString(UpdateChecker.java:120)
at org.quartz.utils.UpdateChecker.buildUpdateCheckUrl(UpdateChecker.java:114)
at org.quartz.utils.UpdateChecker.doCheck(UpdateChecker.java:55)
at org.quartz.utils.UpdateChecker.checkForUpdate(UpdateChecker.java:47)
at org.quartz.utils.UpdateChecker.run(UpdateChecker.java:39)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)

我也遇到了相同的异常错误,出现了Could not load java.net.URLEncoderCould not load java.net.URLConnection。我正在使用Eclipse Indigo SR1和Tomcat V6.0。


你试图执行什么? - Raptor
一个网络应用程序,之前一切都正常工作,但是当我再次尝试运行服务器(没有修改任何代码)时,我收到了这种异常,却不知道为什么。我已经尝试清理项目并重新启动服务器,甚至关闭了我的电脑,但我的应用程序仍然无法运行。 - Brilliant Robert
我在这里解释了为什么会发生这种情况,也许这些信息也会有所帮助 https://dev59.com/3m435IYBdhLWcg3wfQF9#38761644 - Musa
4个回答

38

重新启动服务器后,您可以解决这个问题,因为服务器将会缓存旧版本的应用。

点击此处查看


3
现在一切都好了。我刚刚重新启动了服务器,第n次尝试后,终于成功了。谢谢 @PSR。 - Brilliant Robert
即使重新启动了,我仍然无法解决这个问题。最终我发现我的一个库JAR需要一个DLL(Linux的.SO)来编译。这个DLL缺失了。我将它添加到了我的Tomcat库中并重新启动了Tomcat。问题解决了。不过我还需要弄清楚为什么会出现这个异常。 - Utsav Gupta
这不是一个解决方案。当在全新的虚拟机上启动Tomcat时,在干净的Docker容器中也会出现此错误。 - jaredready
@mjj1409,你分享的链接对于报告的问题有什么帮助吗?我没有看到任何联系。 - Suresh

23

你无法通过“重新启动服务器”来解决这个问题。

问题在于当你通过上传新版本到Tomcat更新你的应用程序时,某些资源没有被正确清理。可能是任何东西引起的,比如一个失控的线程、一种定时服务或监听器。当该进程尝试加载类时,Tomcat会检测并阻止它。

解决问题的方法是正确跟踪并在关闭时关闭这些线程。


2

最近我也遇到过这个问题。

在我的情况下,问题是由于未经处理的异常在javax.servlet.ServletContextListener中引起的,该异常被记录在一个localhost-date.log日志文件中。

由于这个异常,web应用程序没有部署,但已经启动的java.util.concurrent.Executors仍在运行,导致catalina-date.log中出现了另一系列异常:
java.lang.IllegalStateException: 非法访问:此 Web 应用程序实例已经被停止。无法加载 WhatEver.class

我的解决方案:

  • 检查所有的Tomcat日志
  • 修复javax.servlet.ServletContextListener中的异常

0

我曾经遇到过类似的问题。我通过增加虚拟机参数中服务器的permsize来解决了这个问题,-XX:MaxPermSize=1024m


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接