当我开始使用spark(master和worker)时 start-all.sh
脚本中,工作节点无法启动,并且在控制台中可以看到以下内容。
hadoop-slave-1: Spark Command: /usr/lib/java/jdk/bin/java -cp /kerben/third-party/spark/conf/:/kerben/third-party/spark/jars/* -Xmx1g org.apache.spark.deploy.worker.Worker --webui-port 8081 spark://hadoop-master:7077
hadoop-slave-1: ========================================
hadoop-slave-1: Error: Unable to initialize main class org.apache.spark.deploy.worker.Worker
hadoop-slave-1: Caused by: java.lang.NoClassDefFoundError: org/slf4j/Logger
hadoop-slave-1: full log in /kerben/third-party/spark/logs/spark-tradex-org.apache.spark.deploy.worker.Worker-1-rajesh2-VirtualBox.out
我有两个问题:
所使用的java路径(/usr/lib/java/jdk/bin/java)不是我在spark-env.sh中为javahome设置的值。它是系统默认的java。如何告诉spark使用java\u home所指的java?
我在spark-env.sh中通过spark\u dist\u类路径设置的类路径没有被拾取为什么?那条路有所有的slf4j和其他jar。我想如果它从这里开始选择类路径,我会通过的 java.lang.NoClassDefFoundError
版本:spark 2.4.4(不含hadoop)、hadoop 2.7.7
暂无答案!
目前还没有任何答案,快来回答吧!