最近在做一个类市于QQ的java程序,采用的是CS结构,
其中将我自定义的对象从Client端向Server端传输时,在JCreater里面能编译和运行,但在JBuilder里就出现castException,请问是怎么回事?
用户自定义的UserData.java能不能分别存放在Client、Server里,保证程序编译?

解决方案 »

  1.   

    你得要求在服务器端和客户端的UserData 的定义是一模一样的,最好是给每一个可串行化的类都加一个private static final long seriaVersionUID的字段
    这个就可以保证你即使以后改了这个可串行化的类,它依然可以尽最大的努力还原你以前的类
      

  2.   

    java.lang.ClassCastException: client.UserData cannot be cast to server.UserData
    at server.UserThread.run(UserThread.java:98)
    我按你说的做了,但是还是出现上述问题。
    我在 JCreater里编译时,能运行,很正常,但一旦打包成jar,就和在Eclipse、JBuilder 里一样了,直接就是上述异常
      

  3.   

    还有,我在编程时,是将client和server这两个包放在一个项目下的