下载的spark 1.2.0
源码,使用命令
mvn -Pyarn -Phadoop-2.2 -Dhadoop.version=2.2.0 -DskipTests clean package
编译,运行spark-shell
时正常。但是在运行spark-shell --master yarn-client
时会报错误:
diagnostics: Application application_1420611218803_0002 failed 2 times due to AM Container for appattempt_1420611218803_0002_000002 exited with exitCode: -1000 due to: java.io.FileNotFoundException: File file:/home/hadoop/Applications/spark-1.2.0/assembly/target/scala-2.10/spark-assembly-1.2.0-hadoop2.2.0.jar does not exist .Failing this attempt.. Failing the application.
我查了一下该文件,的确存在且目录正确。
我的spark-env.sh
文件只设置了HADOOP_CONF_DIR
变量。以前安装过spark 1.1.0
且也是只设置了该变量,集群运行正常。
我试着添加SPARK_JAR
等参数,没有效果。
请问可能是哪些地方出现了问题?
好吧,是我粗心了。
就是
HADOOP_CONF_DIR
路径设置错误。Hadoop
程序放在了/home/hadoop/Applications/...
下,路径设置为$HOME/hadoop/Applications/...
,关键是我的$HOME=/home/hadoop
。问题就在这。这几天这个问题没少折腾,刚刚又把
spark
重新编译了一遍,花了我一个多小时。这再次提醒我,细心很重要。