Tôi có một số lớp có thể tuần tự được biên dịch mà không chỉ định một serialVersionUID. Bây giờ tôi cần thêm một số thành viên dữ liệu vào các lớp này nhưng muốn bảo tồn một số đối tượng đã được tuần tự hóa.Làm thế nào tôi có thể tìm ra serialVersionUID của một đối tượng Java được tuần tự hóa?
Có cách nào để tìm ra serialVersionUID của các đối tượng được tuần tự hóa này để tôi có thể chỉ định cùng một ID trong mã nguồn không?
Đảm bảo bạn thực hiện điều này với cùng một JVM chính xác mà bạn đã sử dụng để biên dịch mã ban đầu! – Eddie
Điều này cũng sẽ hoạt động trên một JVM khác nhau, bởi vì nếu không thì các tệp lớp và các đối tượng được tuần tự hóa sẽ không được di chuyển trên các JVM (mà chúng là). – Thilo
Thông số tuần tự hóa đối tượng Java, phần 4.6, giải thích cách serialVersionUID có thể không tương thích trên các JVM trong trường hợp các lớp bên trong, do việc triển khai tạo các tên khác nhau cho các thành viên tổng hợp. Tôi đã thấy điều này xảy ra trong thực tế, ngay cả với hai Sun JVM. – Martin