gpt4 book ai didi

java - jar 中的 ClassNotFoundException

转载 作者:行者123 更新时间:2023-12-01 14:20:29 26 4
gpt4 key购买 nike

我的 Java 应用程序出现问题。有时,当我在 Ubuntu 服务器上运行应用程序时,会发生 ClassNotFoundException。我说有时是因为错误是随机出现的:有时是在很长一段时间后(重新启动应用程序修复了错误),有时是第一次使用相关类时(并重建应用程序修复了错误)。

请注意,导致错误的类并不总是相同。另请注意,我不使用 Class.forName() 或 Classloader.loadClass() 或 ClassLoader.findSystemClass()。

我通过以下命令运行我的应用程序:java -jar server.jar

所有类都在 Jar 文件中(我将其解压以进行检查),并且 Manifest 是正确的。

这是我得到的错误:

java.lang.ClassNotFoundException:com.edioromeh.server.server2server.S2SDroppedItem
在 java.net.URLClassLoader$1.run(URLClassLoader.java:366)
在 java.net.URLClassLoader$1.run(URLClassLoader.java:355)
在 java.security.AccessController.doPrivileged( native 方法)
在 java.net.URLClassLoader.findClass(URLClassLoader.java:354)
在 java.lang.ClassLoader.loadClass(ClassLoader.java:423)
在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
在 java.lang.ClassLoader.loadClass(ClassLoader.java:356)
在 java.lang.Class.forName0( native 方法)
在 java.lang.Class.forName(Class.java:266)
在 java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:622)
在 java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1593)
在 java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1514)
在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1750)
在 java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
在 com.edioromeh.ub.server.Messenger.run(Messenger.java:44)
在 java.lang.Thread.run(Thread.java:722)

我的java版本是:java版本“1.7.0_15”OpenJDK运行环境(IcedTea7 2.3.7)(7u15-2.3.7-0ubuntu1~12.04.1)OpenJDK 64 位服务器虚拟机(内部版本 23.7-b01,混合模式)

感谢您的帮助!

最佳答案

请注意,当您通过 ObjectInputStream 从字节数组反序列化对象时,您的应用程序必须依赖于该对象的类,因为“ObjectInputStream.resolveClass”方法将调用 java.lang.Class.forName0() 以使流成为对象。

这里您的应用程序不依赖于名为“com.edioromeh.server.server2server.S2SDroppedItem”的类

您可以找到包含此类的 .jar 文件并将其放入应用程序的类路径中。

关于java - jar 中的 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17623262/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com