java - Neo4J 服务器安装 Linux AWS Centos 操作系统 -- 服务用户找不到 java

标签 java neo4j

我已经从 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 安装命令。命令运行成功

我可以像我自己一样成功启动 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 它会按预期返回 如果我 echo $PATH 它会按预期返回

正如预期的那样,我们可以在路径上看到 java。

如果我在运行 sudo service neo4j-service start 之前简单地输入 java -version 响应显示 java 版本。

一点背景知识:除非我首先按照我们的正常 IT 策略运行特殊脚本,否则 Linux 服务命令不可用。但是,该脚本破坏了我原本会使用的导出。

相应的命令 服务neo4j-服务启动

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

表示找不到“service”命令

所以我们的环境中需要sudo来执行服务命令

我们尝试过将 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 账户一样简单?为什么会出现错误消息“no java in (/sbin:/usr/sbin:/bin:/usr/bin)”?

提前致谢

最佳答案

我在我的 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

关于java - Neo4J 服务器安装 Linux AWS Centos 操作系统 -- 服务用户找不到 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22130797/

相关文章:

java - .NET 弹出框术语以及 Java

Java : Keystate operation issue

csv - 如何在 CSV 中指定关系类型?

java - Neo4j 在同一查询中删除/设置标签和属性

neo4j - 使用 Neo4J 基于时间的数据查询显示出比预期更多的关系

java - 在 Ibatis 中迭代对象列表

java - Spring Security 2 自定义身份验证提供程序不保存安全上下文

java - 两种类型的通用类

java - 为 Neo4j 节点实体生成分层数据

database - 简化有条件地创建新关系的 Neo4j 查询