2016-03-14 90 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}':不是有效的标识符 –