新しいクラスに serialVersionUID を明示的に指定するのは良くないように思えます。レイアウトを変更する必要がある場合に変更しない場合と、変更する必要がない場合に変更する場合の 2 つのケースを考えてみましょう。
変更すべきときに変更されないのは、ほとんど明示的である場合に限られます。この場合、非常に微妙で見つけにくいバグが発生します。特に開発中は、クラスのレイアウトが頻繁に変更されます。ただし、明示的に指定されていない場合は変更され、逆シリアル化が大声で中断されます。ほとんどの場合、リポジトリをパージすることで解決されます。
変更すべきではない場合に変更するのは、暗黙的である場合に限られます。これは、クラス レイアウトが変更されたまれなケースですが、古いシリアル化された BLOB から逆シリアル化したい場合です。これは QA ( 5.2 から 5.2.1 へのアップグレード後の奇妙なエラー、添付のスタック トレースを参照)中にキャッチされる可能性があり、明示的な値を設定することで簡単に修正できます。
コメント?