Как узнать SerialVersionUID

Иногда случается, что при взаимодействии приложений через передачу сериализованных объектов возникают ошибки типа

Caused by: java.io.InvalidClassException: info.privateblog.CityModel; local class incompatible: stream classdesc serialVersionUID = -8132758437722147375, local class serialVersionUID = -8723418471534163752

Такая ошибка говорит, что версия класса полученного объекта и переданного не совпадают. Такое часто случается, если SerialVersionUID задаётся неявно. Но как узнать SerialVersionUID в таком случае, чтоб сделать анализ? Достаточно подключить класс к какому-нибудь тестовому проекту и вызвать команду

System.out.println(ObjectStreamClass.lookup(CityModel.class).getSerialVersionUID());

  1. Пока что нет комментариев.
  1. Пока что нет уведомлений.