我正在测试从csv加载数据并将其保存在Elasticsearch中,但我在使用spark时将我的RDD集合保存在Elasticsearch中遇到了一些麻烦。 提交作业时引发此错误:Elasticsearch的Spark(Java)
Exception in thread "main" java.lang.NoClassDefFoundError: org/elasticsearch/spark/rdd/api/java/JavaEsSpark
但自从我使用Maven编译我的依赖应该是正确的......
我的pom.xml的是在这里:http://pastebin.com/b71KL903。
当我到达这条线将引发错误:
我的代码JavaEsSpark.saveToEs(javaRDD, "index/logements");
休息是在这里:http://pastebin.com/8yuJB68A
我已经搜索关于这个问题,但没有发现任何东西: https://discuss.elastic.co/t/problem-between-spark-and-elasticsearch/51942。
https://github.com/elastic/elasticsearch-hadoop/issues/713。
https://github.com/elastic/elasticsearch-hadoop/issues/585。
我刚刚得知: 的“ClassNotFoundException的”出现,因为星火将关闭其在工作异常的情况下,立即类加载器,从而需要装载的任何其它类,会失败,从而导致要隐藏的初始误差。
但我不知道如何继续。我提出我的工作用详细模式,但没有看到任何东西:http://pastebin.com/j6zmyjFr
感谢您进一步的帮助:)
我不知道我需要什么驱动程序类路径和什么级别。 我添加了jar elasticsearch-hadoop,但我不知道要在 – kulssaka
之后添加什么内容你能否粘贴你的spark-submit命令? – Knight71
bin/spark-submit --verbose --class“SimpleApp”--master local [4] target/simple-project-1.0.jar --jars elasticsearch-hadoop-2.3.2.jar 然后什么驱动程序类我需要补充?它似乎缺少的类是JavaEsSpark 谢谢 – kulssaka