[英]NoSuchMethodError on a Map (Spark Scala class)
我在本地盒子上以獨立模式運行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
進行構建。 請參閱文檔中的為Scala 2.11構建 。
正如Daniel Darabos所說,要么再次為2.11建立火花,要么你可以簡單地將scala降級到2.10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.