java.io.InvalidClassException: lokalna klasa niezgodna:
Stworzyłem klienta i serwer, a następnie dodałem klasę po stronie klienta do celów serializacji, a następnie po prostu poszedłem do folderu klienta na moim dysku twardym i skopiowałem wkleję go do lokalizacji odpowiadającej serwerowi, zarównoclassname.class
iclassname.java
odpowiednio.
Działało to dobrze na moim własnym laptopie, ale kiedy chciałem kontynuować pracę w innym systemie, kiedy otworzyłem foldery projektów i po próbie połączenia klienta z serwerem, pojawia się następujący błąd:
<code>Exception in thread "main" java.io.InvalidClassException: projectname.clasname; local class incompatible: stream classdesc serialVersionUID = -6009442170907349114, local class serialVersionUID = 6529685098267757690 at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350) </code>
Co się dzieje? Czy dlatego, że uruchomiłem program ze starszą wersją IDE?
EDYTOWAĆ<code>import java.io.Serializable; import java.net.URL; public class KeyAdr implements Serializable { private static final long serialVersionUID = 6529685098267757690L; public URL adr; public String key; } </code>