eru*_*ina 8 java client classnotfoundexception
我正在尝试使用Java并希望使用Java的客户端/服务器进行测试,以使客户端将自定义类(Message)的简单对象发送到服务器.问题是我一直在服务器端获得ClassNotFoundException.
我认为其余的代码似乎没问题,因为像String这样的其他对象可以毫无问题地通过.
我在客户端和服务器的不同位置有两个不同的netbeans项目.
他们每个人都有自己的Message类副本.消息类实现Serializable.
在客户端,我尝试发送一个Message对象.
在服务器端,在调用readObject方法时,它似乎从客户端的包中找到Message类而不是它自己的包.printStackTrace显示:服务器端的"java.lang.ClassNotFoundException:client.Message"
我甚至没有尝试过投射或存储收到的对象.有什么东西我遗漏了吗?
Bal*_*usC 18
包名称和类名必须在两侧完全相同.即写一次,编译一次,然后给双方相同的副本.没有单独的server.Message和client.Message类,但没有单个shared.Message类或类似的东西.
如果您可以保证相同的包/类名称,但并不总是在完全相同的副本时,则需要向相关类添加serialVersionUID具有相同值的字段.
package shared;
import java.io.Serializable;
public class Message implements Serializable {
private static final long serialVersionUID = 1L;
// ...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12939 次 |
| 最近记录: |