neo4j start导致错误:JAVA_HOME定义不正确

时间:2017-04-04 21:35:03

标签: ubuntu neo4j

我正在尝试使用此命令在Ubuntu计算机上运行neo4j服务器:

sudo neo4j start

但它给了我这个错误:

ERROR: JAVA_HOME is incorrectly defined as /usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/ (the executable /usr/lib/jvm/java-1.7.0-openjdk-amd64/bin//bin/java does not exist)

现在,我已将JAVA_HOME设置为安装Java的正确目录。这是我运行echo $JAVA_HOME时得到的结果:

/usr/lib/jvm/java-8-oracle

我不知道JAVA_HOME的价值在哪里。我检查了配置文件,但是我找不到任何可能需要设置JAVA_HOME的变量。

2 个答案:

答案 0 :(得分:4)

这与7的问题相同,你可以这样解决:

JAVA_HOME应设置为包含包含Java可执行文件的bin目录的目录的名称(特别是java本身)。

假设你有一个/usr/lib/jvm/jdk1.7.0目录,它可能包含一个jre子目录,其中包含bin目录,其中包含java和相关的可执行文件。

所以你应该将JAVA_HOME设置为/usr/lib/jvm/jdk1.7.0/jre而不是/usr/lib/jvm/jdk1.7.0

请参阅 JAVA_HOME is not defined correctly了解更多信息。

答案 1 :(得分:0)

默认情况下,某些发行版会重置环境变量,以确保在root用户下执行的程序按预期运行。 (sudo: java: command not found after exiting from root user

因此,在使用sudo时请保留环境变量:

sudo -E neo4j start