2016-03-14 125 views
0

設置Java路徑和Hadoop分發文件後,當我嘗試檢查用法文檔時,出現錯誤。即使設定了路徑,我也很困惑。這就是我設定路徑的方式。在Mac上設置單節點Hadoop集羣

下面顯示的是在終端

/Users/hadoop/hadoop-2.6.0/etc/hadoop/hadoop-env.sh: line 26: JAVA_HOME=${/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home }: bad substitution

/Users/hadoop/hadoop-2.6.0/etc/hadoop/hadoop-env.sh: line 35: HADOOP_CONF_DIR=${"/Users/hadoop/hadoop-2.6.0 "}: bad substitution

+1

做到這一點,我認爲你只需要'JAVA_HOME =/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home' ...通過執行'$ {...}'你試圖做一個變量替換 –

+1

謝謝你解決了java -path問題java,但是當嘗試bin/hadoop時,用法:hadoop [--config confdir] COMMAND。 –

回答

0

這樣做${...}你正在嘗試做一個變量替換,這樣你的錯誤。

改爲JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home


另外,我覺得這是更好的

export JAVA_HOME=`/usr/libexec/java_home` 

而且你可以看到它的工作原理是這樣

$ echo $JAVA_HOME            
/Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home 

此外,following the tutorial,它並不意味着字面上放{/path/to/folder}

export HADOOP_PREFIX={your hadoop distribution directory} 

它要你的,無論你下載的包

export HADOOP_PREFIX=/Users/hadoop/Downloads/hadoop-2.6.0 

然後加入到PATH看起來像

export PATH=$JAVA_HOME:$PATH 
export PATH=$HADOOP_PREFIX:$PATH 
+0

我確實改變了這一路徑,實際上我正在關注這篇文章以設置'http://sungsoo.github.io/2015/09/01/hadoop-installation-on-mac-os-x-yosemite.html' –

+0

但我無法設置路徑導出HADOOP_PREFIX = {您的hadoop分配目錄} –

+0

當我嘗試導出PATH = $ PATH {/Users/hadoop/Downloads/hadoop-2.6.0}出現以下錯誤時:第36行:導出:'/ usr/local/bin:/ usr/bin:/ bin:/ usr/sbin:/ sbin:/ opt/X11/bin:/ usr/local/MacGPG2/bin {/ Users/hadoop/Downloads/hadoop -2.6.0}':不是有效的標識符 –