Hi Imran, Thanks for the response! However, I am still not there yet.
In the Scala interpreter, I can do: scala> classOf[scala.reflect.ClassTag$$anon$1] but when I try to do this in my program in IntelliJ, it indicates an error: Cannot resolve symbol ClassTag$$anon$1 Hence I am not any closer to making this work. If you have any further suggestions, they would be most welcome. arun On Tue, Apr 14, 2015 at 2:33 PM, Imran Rashid <iras...@cloudera.com> wrote: > Hi Arun, > > It can be hard to use kryo with required registration because of issues > like this -- there isn't a good way to register all the classes that you > need transitively. In this case, it looks like one of your classes has a > reference to a ClassTag, which in turn has a reference to some anonymous > inner class. I'd suggest > > (a) figuring out whether you really want to be serializing this thing -- > its possible you're serializing an RDD which keeps a ClassTag, but normally > you wouldn't want to serialize your RDDs > (b) you might want to bring this up w/ chill -- spark offloads most of the > kryo setup for all the scala internals to chill, I'm surprised they don't > handle this already. Looks like they still handle ClassManifests which are > from pre-scala 2.10: > https://github.com/twitter/chill/blob/master/chill-scala/src/main/scala/com/twitter/chill/ScalaKryoInstantiator.scala#L189 > > (c) you can always register these classes yourself, despite the crazy > names, though you'll just need to knock these out one-by-one: > > scala> classOf[scala.reflect.ClassTag$$anon$1] > > res0: Class[scala.reflect.ClassTag[T]{def unapply(x$1: > scala.runtime.BoxedUnit): Option[_]; def arrayClass(x$1: Class[_]): > Class[_]}] = class scala.reflect.ClassTag$$anon$1 > > On Mon, Apr 13, 2015 at 6:09 PM, Arun Lists <lists.a...@gmail.com> wrote: > >> Hi, >> >> I am trying to register classes with KryoSerializer. This has worked with >> other programs. Usually the error messages are helpful in indicating which >> classes need to be registered. But with my current program, I get the >> following cryptic error message: >> >> *Caused by: java.lang.IllegalArgumentException: Class is not registered: >> scala.reflect.ClassTag$$anon$1* >> >> *Note: To register this class use: >> kryo.register(scala.reflect.ClassTag$$anon$1.class);* >> >> How do I find out which class needs to be registered? I looked at my >> program and registered all classes used in RDDs. But clearly more classes >> remain to be registered if I can figure out which classes. >> >> Thanks for your help! >> >> arun >> >> >> >