当我在集群中运行spark程序时,我在日志中收到以下错误:
java.io.IOException: Cannot run program "java" (in directory "/cloud/packages/spark-0.9.0-incubating-bin-hadoop1/work/app-20140424114752-0000/0"): java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
at org.apache.spark.deploy.worker.ExecutorRunner.fetchAndRunExecutor(ExecutorRunner.scala:129)
at org.apache.spark.deploy.worker.ExecutorRunner$$anon$1.run(ExecutorRunner.scala:59)
Caused by: java.io.IOException: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.<init>(UNIXProcess.java:148)
at java.lang.ProcessImpl.start(ProcessImpl.java:65)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:453)
... 2 more
我已经设置了 JAVA_HOME(/cloud/packages/jdk1.6.0_38
) 和 SPARK_HOME(/cloud/packages/spark-0.9.0-incubating-bin-hadoop1
>).
导致这个异常的原因是什么?如何解决?
最佳答案
我在 Ubuntu 12.04 上遇到了同样的问题,并通过在 /etc/environment
中添加 JAVA_HOME
来修复它。
关于java - 无法在 Spark Worker 中运行 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23259672/