感谢您花时间看我的问题。
我开发了一个 Java WAR 文件,旨在一次仅分发到一台服务器。到目前为止,我已经成功地在 3 台不同的服务器上进行了测试,一台是 Debian,一台是 Ubuntu,另一台是我正在开发的 Windows 机器。
在最终的部署服务器上,由于某种原因,应用程序部署良好,并且在每次启动时运行良好约 3 分钟。数据库连接正常,一切正常。然而 3 分钟后,每次应用程序尝试访问数据库时,我都会开始看到 NoClassDefFoundError。
我是以下库,所有这些库都打包在 WAR 文件中:
Mysql/j 连接器,最新版本 ActiveObjects,0.8.2 Jasorb 1.3 Jython 2.5.1(用于某些脚本) Tomcat 6.0.20 mod_python Apache
错误:
线程“Timer-4”中的异常 java.lang.NoClassDefFoundError: com.mysql.jdbc.Util.handleNewInstance(Util.java:430) 处的 com/mysql/jdbc/SQLError 在 com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl .java:352) 在 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:284) 在 java.sql.DriverManager.getConnection(DriverManager.java:582) 在 java.sql.DriverManager.getConnection(DriverManager.java: 185) 在 net.java.ao.DatabaseProvider.getConnectionImpl(DatabaseProvider.java:771) 在 net.java.ao.DatabaseProvider.getConnection(DatabaseProvider.java:734) 在 net.java.ao.EntityManager.find(EntityManager.java :666) 在 net.java.ao.EntityManager.find(EntityManager.java:607) 在 net.java.ao.EntityManager.find(EntityManager.java:579)在 com.sq.sa.SAPushAlertsTask.run(SAPushAlertsTask.java:32) 在 java.util.TimerThread.mainLoop(Timer.java:512) 在 java.util.TimerThread.run(Timer.java:462) 引起作者:java.lang.ClassNotFoundException: org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:138 7) 处的 com.mysql.jdbc.SQLError org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader. java:123 3) 在 java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) ... 13 更多WebappClassLoader.loadClass(WebappClassLoader.java:138 7) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:123 3) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) ... 13更多的WebappClassLoader.loadClass(WebappClassLoader.java:138 7) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:123 3) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) ... 13更多的