2014-12-30 26 views
1

在Mac 10.7.5上安裝Hadoop 2.6.0的單節點安裝程序時,手冊http://hadoop.apache.org/docs/r1.2.1/single_node_setup.html需要更新java_home。 也就是說,java_home錯誤:更改java或hadoop-env.sh文件的版本?

在準備運行Hadoop集羣的部分,它說:

「在分發,編輯該文件的conf/hadoop-env.sh定義至少JAVA_HOME是你的Java的根安裝。」

我用終端查詢 '的/ usr /的libexec/JAVA_HOME',這是 /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home, 爲JAVA_HOME的值的結果。

因此,hadoop腳本不能正常工作,因爲錯誤:/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home:錯誤的替換。

該錯誤很可能是由於目前在Mac上安裝的不匹配造成的。 我的Java是8.0_25,一個hadoop使用的是6.0_05(最好來自Sun)。此外,這是jdk的路徑,而不是jre,可能需要。

不幸的是,我還沒有在Oracle Java歸檔中發現任何x for Mac OS的java ire 1.6.x。 http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html

回答

0

Hadoop需要jdk 1.6或更高版本。要查找已安裝的java的位置,請執行以下步驟。

在linux命令行中鍵入命令其中java 如果java已經安裝並添加到路徑,這可能會給你一個位置。 類型ll 這將爲您提供java的確切位置。

如:

which java /usr/bin/java

ls -all /usr/bin/java lrwxrwxrwx 1 root root 22 Sep 17 09:43 /usr/bin/java -> /etc/alternatives/java

ls -all /etc/alternatives/java lrwxrwxrwx 1 root root 35 Sep 17 09:43 /etc/alternatives/java -> /usr/lib/jvm/jdk1.7.0_60/bin/java

在這種情況下,JAVA_HOME的值將是/usr/lib/jvm/jdk1.7.0_60

使用此值和hadoop-添加它env.sh 如: 出口JAVA_HOME =/usr/lib目錄/ JVM/jdk1.7.0_60

如果JDK不存在,你必須安裝JDK。 你提到過關於JRE。你應該使用JDK。 JDK for MAC可在oracle網站上找到。

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

您所遵循的安裝文件是1.2.1版本,你有Hadoop的版本是2.6.0。使用正確的安裝文檔。

http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/SingleCluster.html

相關問題