Не могу запустить Java в искровой рабочий

1

Когда я запускал искровую программу в кластере, я получил эту ошибку в журнале:

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).

Каковы причины этого исключения? Как его исправить?

  • 0
    Можете ли вы проверить версию Java. Java-версия
Теги:
apache-spark

3 ответа

2
Лучший ответ

Я столкнулся с той же проблемой в Ubuntu 12.04 и исправил ее, добавив JAVA_HOME в /etc/environment.

  • 0
    Благодарю. Собственно, я потерял возможность решить эту проблему. Потому что машина была переустановлена для какого-то фатального сбоя.
  • 0
    Решил мою проблему. Спасибо!
0

В оболочке вы привыкли работать с java и разрешать оболочке обращаться к PATH чтобы найти, где она находится. Здесь вы вызываете команду непосредственно в ОС. Он не может найти java как он говорит. Вы можете использовать оболочку типа bash для вызова команды для вас или указать полный путь к java.

Но почему? почему бы не запустить Java-код внутри рабочего?

0

Проверьте версию java.

java -version

Если java установлен правильно, он отображает версию Java.

Если не установить java (Ubundu)

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

Обновить

Проверьте echo $JAVA_HOME.

Else set java home в .bashrc

export JAVA_HOME=/cloud/packages/jdk1.6.0_38 
export PATH=$PATH:$JAVA_HOME/bin
  • 0
    java -version результат: Java версии "1.6.0_38" Java (TM) SE Runtime Environment (сборка 1.6.0_38-B05) Java HotSpot (TM) 64-разрядного сервера VM (сборка 20.13-B02, смешанный режим)
  • 0
    Ява на моем сервере.
Показать ещё 7 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню