1

サーバーとの通信にシリアル化を使用しています。JTreeこのようにして、私のアプレットはサーバーで作成されたものを取得します。eclipseとappletViewerでは、アプレットは完全に機能しますが、サーバーからアプレットを起動しようとすると、コンソールでこのエラーが発生しました。

java.io.InvalidClassException:javax.swing.JComponent; ローカルクラスに互換性がありません:ストリームclassdesc serialVersionUID = 5858390075012080263、ローカルクラスserialVersionUID = -1030230214076481435

プロジェクトのすべてのクラスのserialVersionUIDを取得しようとしましserialverたが、いずれも 取得していませんserialVersionUID = 5858390075012080263

オブジェクトを逆シリアル化しようとすると、エラーが発生します。これに加えて、エラーは言う

java.io.InvalidClassException: javax.swing.JComponent

JComponentこのエラーの原因を特定するにはどうすればよいですか?それは私のJTreeですか?serialVersionUIDを設定するにはどうすればよいですか?このJComponentを拡張するクラスを作成し、serialVersionUIDを設定しますか?

4

1 に答える 1

1

問題が解決しました。私のシステムには 4 つの異なる JRE があります。私のクラスではなく、JVM自体の問題でした。現在、どこでも同じ JRE を使用しており、すべて正常に動作しています。

于 2011-05-25T14:25:48.303 に答える