java - 无法加载 [java.lang.Math]

标签 java apache tomcat

我已经将我的 tomcat 和 jdk 升级到 apache-tomcat-8.5.12 和 jdk1.8.0_121。但似乎我在启动后遇到了错误。

请引用下面我的错误:

09-Jun-2017 00:37:31.776 INFO [Timer-0] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [java.lang.Math]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
 java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [java.lang.Math]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
        at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1305)
        at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1293)
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
        at org.apache.commons.pool.impl.GenericObjectPool.calculateDeficit(GenericObjectPool.java:1647)
        at org.apache.commons.pool.impl.GenericObjectPool.ensureMinIdle(GenericObjectPool.java:1621)
        at org.apache.commons.pool.impl.GenericObjectPool.access$700(GenericObjectPool.java:190)
        at org.apache.commons.pool.impl.GenericObjectPool$Evictor.run(GenericObjectPool.java:1758)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)

Exception in thread "Timer-0" java.lang.NoClassDefFoundError: java/lang/Math
        at org.apache.commons.pool.impl.GenericObjectPool.calculateDeficit(GenericObjectPool.java:1647)
        at org.apache.commons.pool.impl.GenericObjectPool.ensureMinIdle(GenericObjectPool.java:1621)
        at org.apache.commons.pool.impl.GenericObjectPool.access$700(GenericObjectPool.java:190)
        at org.apache.commons.pool.impl.GenericObjectPool$Evictor.run(GenericObjectPool.java:1758)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)
Caused by: java.lang.ClassNotFoundException: Illegal access: this web application instance has been stopped already. Could not load [java.lang.Math]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
        at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1295)
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
        ... 6 more
Caused by: java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [java.lang.Math]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
        at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1305)
        at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1293)
        ... 8 more

最佳答案

这是 Tomcat 发出的误导性错误消息,并不是问题的根本原因。由于出现其他问题,您的实例此时已停止。

在此之前查看 Catalina(或任何其他)日志是否有问题,这将是您的根本原因。此错误消息只是一个恼人的副作用。

最后,升级 Tomcat 时的一个好规则是从 webapps 文件夹中删除提取的 webapp 以防止缓存问题,并让 Tomcat 重新自动部署 web 存档。

关于java - 无法加载 [java.lang.Math],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44431317/

相关文章:

tomcat - SSL、Tomcat 和 Grails

Eclipse Juno 的 Maven 插件 -> 在 .m2 下找不到 conf 目录

java - 从 Intellij IDEA 中运行 Tomcat 时有何不同?

java - 哪种引号效率更高?

java - 迭代模式

python - Django 部署。加载 MySQLdb 模块时出错。从/tmp 目录读取/写入时出现问题

android - 如何解决在 Android 上通过 Firefox 打开 PDF 的问题?

php - 使用不同目录托管多个站点的 Apache 服务器 (CentOS)

java - 在 Eclipse 中使用 Maven 就地提供资源

java - 在读取ArrayList之前如何确定磁盘文件的类型?