import org.apache.spark.api.java.JavaRDD
import org.apache.spark.rdd.RDD
import scala.reflect.ClassTag
class TestRDD[T: ClassTag](rdd: RDD[T]) extends JavaRDD(rdd)
从控制台接受该语句。但是,在编译时会引发以下错误:
No ClassTag available for T
[error] class TestRDD[T: ClassTag](rdd: RDD[T]) extends JavaRDD(rdd)
[error] ^
[error] one error found
[error] (jobs/it:compileIncremental) Compilation failed
最佳答案
我想你想要这个:
class TestRDD[T](rdd: List[T])(implicit c: ClassTag[T]) extends JavaRDD(rdd)
使用
implicit
自动隐含通用T的ClassTag
。