繁体   English   中英

Neo4J Server安装Linux AWS Centos OS —服务用户找不到Java

[英]Neo4J Server Installation Linux AWS Centos OS — service user cannot find java

我已经从Neo网站下载了Neo4J enterprise,并在/ opt下解压缩了它

我已经从Oracle网站成功下载并安装了Java 7 Server版本。 注意,在指出我想要服务器JRE之后,Oracle下载了该文件:jdk1.7.0_51

我已经在/ opt下解压缩了/opt/neo4j-2.0.0和/opt/jdk1.7.0_51

我已经在具有Centos Linux的AWS上成功安装了Neo4J 2.O,因此它应作为服务在服务帐户下运行。 为此,我使用了Neo install命令。 命令成功运行

我可以自己成功启动Neo4J。 编辑我的〜/ .bash_profile后,定义JAVA_HOME并导出。

export JAVA_HOME="/opt/jdk1.7.0_51/"
export NEO4J_HOME="/opt/neo4j-2.0.0"
export PATH=$JAVA_HOME/bin:$NEO4J_HOME:$PATH

应用源〜/ .bash_profile

cd /$NEO$J_HOME
bin/neo4j start

效果很好。

但是,我们无法成功让Neo开始作为服务启动

sudo service neo4j-service start

which: no java in (/sbin:/usr/sbin:/bin:/usr/bin)
ERROR: Unable to find java. (Cannot execute )
* Please use Oracle(R) Java(TM) 7 to run Neo4j Server. Download "Java Platform (JDK) 7" from:
 http://www.oracle.com/technetwork/java/javase/downloads/index.html
* Please see http://docs.neo4j.org/ for Neo4j Server installation instructions.

如果我回显$ JAVA_HOME,则按预期方式返回如果我回显$ PATH,则按预期方式返回

按照预期,我们可以在路径上看到java。

如果在运行sudo服务neo4j-service start之前简单地输入java -version,则响应将显示Java版本。

有一点背景:Linux服务命令不可用,除非我首先按照我们的常规it策略运行一个特殊脚本。 但是,该脚本掩盖了本应使用的导出。

因此,命令服务neo4j-service启动

返回-bash:neo4j-service:找不到命令

指示找不到“ service”命令

因此在我们的环境中需要sudo来执行service命令

我们仅尝试将jdk1.7.0_51放在不起作用的/sbin/jdk1.7.0_51下。 我们还尝试了从jdk1.7.0_51中提取jre文件夹并将其放在/ sbin / jre下

还尝试在/etc/profile.d/下创建一个java.sh文件

仍然没有成功。

所以简单的问题。

作为服务运行时,Neo4J 2.0.0在哪里寻找Java? 它是在使用环境变量JAVA_HOME,还是在Neo4J服务器错误消息似乎指示的以下位置之一中查找? “(/ sbin:/ usr / sbin:/ bin:/ usr / bin)中没有Java”

在我的安装配置下,neo4j服务旨在在帐户neo4jservice下运行。 这是否像确保JAVA_HOME对neo4jservice accound一样简单? 为什么出现错误消息“(/ sbin:/ usr / sbin:/ bin:/ usr / bin)中没有Java”?

提前致谢

我对solaris和Linux Mint安装进行了测试,这似乎对我有用,也许它虽然不美观,但可以帮助您前进。 只需删除启动脚本的sudo部分。

sudo NEO4J_HOME="/opt/neo4j" JAVA_HOME="/usr/java" /opt/neo4j/bin/neo4j start

显然,根据您的情况修改环境变量:

JAVA_HOME="/opt/jdk1.7.0_51/" NEO4J_HOME="/opt/neo4j-2.0.0" service neo4j-service start

并不是我希望的答案...答案似乎无视原始POST的这一部分:“因此,在我们的环境中,需要sudo来执行service命令”

似乎有效的方法是修改neo4j-service脚本以包括导出。

可在/etc/init.d中找到neo4j-service

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM