Nutch错误:未设置JAVA_HOME

时间:2015-05-12 20:49:06

标签: java ubuntu nutch

我按照本教程http://saskia-vola.com/nutch-2-2-elasticsearch-1-x-hbase/当我最终尝试运行Nutch sudo bin/nutch inject urls时出现此错误

Error: JAVA_HOME is not set.

但当我回复JAVA_HOME时,它会返回

/usr/lib/jvm/java-7-openjdk-amd64

它也在/ etc / environment

JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"

我还在文件末尾添加了〜/ .bashrc

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

但它仍然会返回此错误。我该如何解决?

3 个答案:

答案 0 :(得分:1)

您正在以root用户身份运行该命令,因此应用程序看到的环境变量对于root用户而非您的用户是可见的。只要检查root是否设置了JAVA_HOME环境变量,或者如果可能的话,以您的用户身份运行该程序。

您可以尝试sudo -E bin/nutch inject urls

正如sudo手册所说, -E, - pre-env 向安全策略指示用户希望保留其现有环境变量。如果用户没有保留环境的权限,安全策略可能会返回错误。

答案 1 :(得分:0)

确保完整的JDK不仅存在JVM。您也可以通过在主目录中的.bashrc文件中导出JAVA_HOME = YOUR_PREFERED_JDK_PATH来覆盖它。

答案 2 :(得分:-1)

可能你没有在/etc/environment中设置java路径。尝试给出命令。

sudo vi /etc/environment

然后设置Java路径

JAVA_PATH=/give your java path here/

您可以使用$JAVA_HOME检查java路径,然后使用

sudo -E bin/nutch inject urls