scala - map 上的 NoSuchMethodError(Spark Scala 类)

标签 scala apache-spark

我在本地机器上以独立模式运行 Spark 1.4.1 和 Scala 2.11。
我有以下...

 object Parser {
    def main(args: Array[String]) {
        if (args.length < 6) {
            System.err.println("Usage: my.Parser <host> <input_loc> 
                                <input_dt> <match_term> <out_loc><file_type>")
            System.exit(1)
        }

        println(" *** Starting summariziation process *** ")

        var host : String = args(0)
        var inploc : String  = args(1)
        val inpdate : String  = args(2)
        val matchTerm : String  = args(3)
        val outloc : String = args(4)
        val fileType : String = args(5)

        println(" <------------------------------------------- debug ::0.0 ")

        val typesMap = Map("data" -> "data", "rider" -> "mon", "sms" -> "sms", "voice" -> "rec", "voucher" -> "vou")
        println( " typesMap - " + typesMap)
        .........
    }
}

当我通过 spark-shell 运行此代码时,它运行良好。但是,通过 spark-submit 作为类对象运行它,我得到了奇怪的行为。我收到以下错误
 *** Starting summariziation process ***
 <------------------------------------------------- debug ::0.0
 Exception in thread "main" java.lang.NoSuchMethodError: 
     scala.Predef$.ArrowAssoc(Ljava/lang/Object;)Ljava/lang/Object;
    at my.Parser$.main(Parser.scala:138)

我想要的只是一个简单的查找来派生要处理的文件类型。

似乎我创建 Map 的行给出了错误。我真的很困惑为什么它在 spark-shell 中工作并在 spark-submit 时出错。

有没有人遇到过这个问题?有人可以建议我如何修复它吗?
提前谢谢你的帮助!

最佳答案

预构建的 Apache Spark 1.4.1 下载适用于 Scala 2.10。如果你想使用 Scala 2.11 你可以用 -Dscala-2.11 构建.见 Building for Scala 2.11在文档中。

关于scala - map 上的 NoSuchMethodError(Spark Scala 类),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32640342/

相关文章:

python - Spark 在 Pandas 数据帧转换期间如何处理时间戳类型?

scala - Shapeless:使用 Record 批量更新

scala - scala.Singleton 是纯编译器小说吗?

抽象函数中的 Scala 泛型

docker - 我无法在 bitnami/spark docker 容器上使用 --package 选项

python - 为什么这个简单的 Spark 程序没有使用多核?

scala - 折叠 Spark 数据帧

scala - 如何将 Spark RDD[Array[MyObject]] 转换为 RDD[MyObject]

pandas - 运行时错误 : Unsupported type in conversion to Arrow: VectorUDT

apache-spark - 如何读取 Spark SQL 的 toDebugString 输出?