我创建了一个连接到可以处理多个连接的服务器的小型应用程序。在我的 java 项目中,我有以下类:
Client.java
连接到服务器的客户端(应用程序 1)Server.java
等待连接并启动 ServerThread(见下文)(应用程序 2)ServerThread.java
每个连接都有自己的线程在这个类中运行CustomObject.java
一个对象,其中包含我从服务器来回发送的几个不同变量。
我这样发送:
out.writeObject(new CustomObject()); // out = objectOutputStream
然后我在服务器应用程序上收到这样的消息:
co = (CustomObject) in.readObject(); // in = objectInputStream
当我在我的项目中运行它时,这非常有用(首先启动服务器应用程序,然后启动客户端应用程序的两个实例)。但是,如果 Server 和 ServerThread 类与 Client 和 CustomObject 类不在同一个 eclipse 项目中,它会给我在我发布的最后一行代码的错误in.readObject();
。“ClassNotFoundException”(即使服务器项目具有 CustomObject 的精确副本)。
我怎样才能解决这个问题?我希望能够将服务器作为一个程序导出并运行,然后在我从 Eclipse 导出它们时将客户端作为一个程序运行。如果有不清楚的地方,请告诉我。