Ubuntu neo4j start导致错误:JAVA_HOME的定义不正确
我试图使用以下命令在Ubuntu机器上运行neo4j服务器:Ubuntu neo4j start导致错误:JAVA_HOME的定义不正确,ubuntu,neo4j,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\u HOME设置
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\u HOME
设置到安装JAVA的正确目录。下面是我运行echo$JAVA\u HOME时得到的结果:
/usr/lib/jvm/java-8-oracle
我不知道它从哪里得到
JAVA\u HOME
的值。我检查了配置文件,但找不到任何引用JAVA\u HOME
的变量,我可能需要设置这些变量。7也有同样的问题,您可以这样解决:
JAVA_HOME
应设置为包含包含JAVA可执行文件(特别是JAVA本身)的bin目录的目录名
假设您确实有一个/usr/lib/jvm/jdk1.7.0
目录,它可能包含一个jre
子目录,其中包含bin
目录,该目录包含java和相关可执行文件
因此,您可能应该将JAVA_HOME
设置为/usr/lib/jvm/jdk1.7.0/jre
,而不是/usr/lib/jvm/jdk1.7.0
看
有关详细信息。某些发行版默认情况下会重置环境变量,以确保在根目录下执行的程序按预期运行。() 因此,在使用
sudo
时保留环境变量:
sudo -E neo4j start
可能的副本:。注意被接受的答案下面关于ubuntu的评论。