次のエラーが表示されます。
Py4JError(u'o73.createDirectStreamWithoutMessageHandler の呼び出し中にエラーが発生しました。トレース:\npy4j.Py4JException: メソッド createDirectStreamWithoutMessageHandler([class org.apache.spark.streaming.api.java.JavaStreamingContext、class java.util.HashMap、class java.util .HashSet、クラス java.util.HashMap]) は存在しません\n\tat py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:335)\n\tat py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:344) \n\tat py4j.Gateway.invoke(Gateway.java:252)\n\tat py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:133)\n\tat py4j.commands.CallCommand.execute(CallCommand.java: 79)\n\tat py4j.GatewayConnection.run(GatewayConnection.java:209)\n\tat java.lang.Thread.run(Thread.java:745)\n\n',)
spark-streaming-kafka-assembly_2.10-1.6.0.jar を使用しています (これは、すべてのノード + マスターの /usr/lib/hadoop/lib/ フォルダーにあります)
(編集) 実際のエラーは次のとおりです: java.lang.NoSuchMethodError: org.apache.hadoop.yarn.util.Apps.crossPlatformify(Ljava/lang/String;)Ljava/lang/String;
これは、hadoop のバージョンが間違っていたことが原因でした。したがって、spark は正しい Hadoop バージョンでコンパイルする必要があります。
mvn -Phadoop-2.6 -Dhadoop.version=2.7.2 -DskipTests clean package
これにより、external/kafka-assembly/target フォルダーに jar が作成されます。