mac 搭建hadoop设置JAVA_HOME

来源:互联网 发布:去他妈的全世界 知乎 编辑:程序博客网 时间:2024/05/23 02:01
在搭建hadoop环境的过程中,如果JAVA_HOME变量没有设置正确会出现未知的错误提示或者得不到想要的结果。下面介绍如何正确设置该变量。
环境:
  • osx10.11.5
  • java-version 1.8.0_92
过程:
  1. 在Macintosh HD-etc下找到profile文件,在最下面添加一行(虽然添加的一行看起来和上面的内容没有什么关系。):export JAVA_HOME="$(/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home)",其中蓝色文字需要自己替换:在终端中输入: /usr/libexec/java_home ,回车得到内容。
  2. 在hadoop目录下找到:etc/hadoop/hadoop-env.sh文件,添加一行:export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home,蓝字仍然用上一步自己得到的内容替换。
  3. 这里仅描述了JAVA_HOME变量的设置,其他的可以参考:http://zhongyaonan.com/hadoop-tutorial/setting-up-hadoop-2-6-on-mac-osx-yosemite.html,我自己按这个教程都试验成功了。
  4. 可能出现的错误
  • usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop/hadoop-env.sh: line 25: /Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home: is a directory,
  • /usr/local/Cellar/hadoop/2.7.3/libexec/etc/hadoop/hadoop-env.sh: line 25: JAVA_HOME=${/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home}: bad substitution,
  • /usr/local/Cellar/hadoop/2.7.3/libexec/bin/hdfs: line 304: /usr/local/Cellar/hadoop/2.7.3/{/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home}/bin/java: No such file or directory,
  • Unable to find a $JAVA_HOME at "/usr", continuing with system-provided Java...
错误解决办法:
  • 符号,括号不要多少,错误。尽可能手动输入,不复制粘贴
0 0