Nutch Error: JAVA_HOME is not set
Nutch Error: JAVA_HOME is not set
我遵循了本教程 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 它时 returns
/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
但它仍然returns这个错误。我该如何解决?
确保完整的 JDK 不仅是 JVM。您也可以通过在主目录的 .bashrc 文件中导出 JAVA_HOME=YOUR_PREFERED_JDK_PATH 来覆盖它。
您运行以 root 用户身份执行命令,因此应用程序看到的环境变量是 root 用户可见的,而不是您的用户可见的。如果可能,只需检查根目录是否设置了 JAVA_HOME 环境变量或 运行 作为您的用户的程序。
你可以试试sudo -E bin/nutch inject urls
正如 sudo 手册所说,
-E, --preserve-env
向安全策略表明用户希望保留其现有环境变量。如果用户没有保护环境的权限,安全策略可能 return 出错。
可能您没有在 /etc/environment
中设置 java 路径。尝试给定的命令。
sudo vi /etc/environment
然后设置Java路径
JAVA_PATH=/give your java path here/
您可以使用 $JAVA_HOME
检查 java 路径,然后使用
sudo -E bin/nutch inject urls
我遵循了本教程 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 它时 returns
/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
但它仍然returns这个错误。我该如何解决?
确保完整的 JDK 不仅是 JVM。您也可以通过在主目录的 .bashrc 文件中导出 JAVA_HOME=YOUR_PREFERED_JDK_PATH 来覆盖它。
您运行以 root 用户身份执行命令,因此应用程序看到的环境变量是 root 用户可见的,而不是您的用户可见的。如果可能,只需检查根目录是否设置了 JAVA_HOME 环境变量或 运行 作为您的用户的程序。
你可以试试sudo -E bin/nutch inject urls
正如 sudo 手册所说, -E, --preserve-env 向安全策略表明用户希望保留其现有环境变量。如果用户没有保护环境的权限,安全策略可能 return 出错。
可能您没有在 /etc/environment
中设置 java 路径。尝试给定的命令。
sudo vi /etc/environment
然后设置Java路径
JAVA_PATH=/give your java path here/
您可以使用 $JAVA_HOME
检查 java 路径,然后使用
sudo -E bin/nutch inject urls