gpt4 book ai didi

scala.ScalaReflectionException : is not a term

转载 作者:行者123 更新时间:2023-12-02 06:59:19 55 4
gpt4 key购买 nike

我在 Spark 中有以下代码:

rdd
.map(processFunction(_))
.saveToCassandra("keyspace", "tableName")

哪里

def processFunction(src: String): Seq[Any] =
src match {
case "a" => List(A("a", 123112, "b"), A("b", 142342, "c"))
case "b" => List(B("d", 12312, "e", "f"), B("g", 12312, "h", "i"))
}

地点:

case class A(entity: String, time: Long, value: String)
case class B(entity: String, time: Long, value1: String, value2: String)

saveToCassandra需要一个对象集合并使用 Seq[Any]作为包含 Seq[A] 的返回类型和Seq[B]休息saveToCassandra异常(exception) - scala.ScalaReflectionException: <none>不是一个术语。造成这种行为的原因是什么?

最佳答案

def processFunction(src: String): (Any, Any) = {
src match {
case "a" => (A("a", 123112, "b"), A("b", 142342, "c"))
case "b" => (B("d", 12312, "e", "f"), B("g", 12312, "h", "i"))
}
}

类似的东西可能会起作用。不过,我还没有过多地尝试在 cassandra 中保存对象。也不将任何内容与 cassandra 一起使用。然而,上面没有案例类和任何问题的解决方案是我最近解决这个问题的方法。例如,下面的代码就可以工作。

def processFunction(src: String): (String, Int, String) = {
src match {
case "a" => ("a", 123112, "b")
case "b" => ("d", 12312, "e")
}
}

但是,这并不完全是您想要的。所以是的,随你便吧。

关于scala.ScalaReflectionException : <none> is not a term,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33811881/

55 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com