Also cross posted to StackOverflow if you'd like to answer it there: http://stackoverflow.com/questions/12703061/scala-serializable-noclassdeffounderror-rmi-w-scala
Been following this tutorial on RMI for Java, trying to translate it to Scala. Instead of interface
I usetrait
, and I annotate methods to indicate the throwing of the RemoteException
.
Got everything implemented, and got to the compilation step and followed it exactly, except instead ofjavac
I used scalac
.
Finally at the exciting last step, running it, and I setup the security policies, start the rmiregistry
, go to startup my server and get hit with this:
java.rmi.ServerError: Error occurred in server thread; nested exception is:
java.lang.NoClassDefFoundError: scala/Serializable
What could be causing this? I changed their command from java
to scala
, but everything else is the same (modulo the usernames and file paths).. how is it not finding scala/Serializable
?
Potentially relevant:
$ 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
Thanks!
You may want to use java command line and put scala on the regular class path rather than the boot class path as the scala script does.
Basically, it should be able to find the class file if the class paths are correct.