0

重複の可能性:
Java シリアライゼーション - java.io.InvalidClassException ローカル クラスに互換性がない

オブジェクト (たとえば A) をファイル (たとえば F) として格納するプログラムを作成しました。したがって、後でプログラムを実行するときに、プログラムをロードしてその内容を使用できます。ここまでは順調ですね。しかし、今日、クラス A にいくつかの変更を加えることにしました。オリジナルのバックアップを作成しました (Aold と呼びます)。しかし、遅すぎたのは、F に保存されている情報が私にとって非常に価値があるということです。そしてもちろん、それを新しいオブジェクト A としてロードしようとすると失敗しました。次に、コンバーターを作成しました。これは、Aold オブジェクトを内容として含むファイルを受け取り、それを新しい A クラスに変換します (まだ私と一緒ですか?) 次に、それをディスクに書き戻します。これにより、次回プログラムが直接ロードできるようになります。oldA を A に改名しました。

しかし、恐怖。ホラー。ディスクからオブジェクトを読み込もうとしたときに、この例外が発生しました。

java.io.InvalidClassException: モデル.A; ローカル クラスに互換性がありません: ストリーム classdess serialVersionUID = -4621085703760431015、ローカル クラス serialVersionUID = -3183461156231139807

情報が失われていますか? それとも解決策はありますか?

4

0 に答える 0