この RMI for Java のチュートリアルに従って、Scala に翻訳しようとしています。interface
を使用する代わりに、trait
メソッドに注釈を付けて、 のスローを示しますRemoteException
。
すべてを実装し、コンパイル手順に進み、正確にそれに従いましjavac
たscalac
。
最後にエキサイティングな最後のステップで、それを実行し、セキュリティ ポリシーをセットアップし、rmiregistry
を起動し、サーバーを起動して、これでヒットします。
java.rmi.ServerError: Error occurred in server thread; nested exception is:
java.lang.NoClassDefFoundError: scala/Serializable
何が原因でしょうか? コマンドを から に変更しましたjava
がscala
、他のすべては同じです (ユーザー名とファイル パスのモジュロ) scala/Serializable
。
関連する可能性があるもの:
$ java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.4) (rhel-1.49.1.11.4.el6_3-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
$ scala -version
Scala code runner version 2.9.2 -- Copyright 2002-2011, LAMP/EPFL
更新: に置き換えられscala.Serializable
、java.io.Serializable
すべてが機能しました。ただし、これは問題の回避策であり、問題の解決にはなりません。Scala APIによるscala.Serializable extends java.io.Serializable
と、クラスパスで何かがおかしくなっている...