Neo4j空间服务器插件3.0.2是否适用于Neo4j 3.0.3社区?

时间:2016-07-01 20:09:24

标签: maven neo4j neo4j-spatial

我一直在努力安装Neo4j空间很长一段时间,现在使用我在网上找到的几种方法。

我正在使用neo4j-community-3.0.3,但我不记得我从中获得的链接。这是一个来自ftp网站的预编译版本(我相信它是neo4j网站上某处的/ archives文件夹,但我无法在谷歌中找到它的生命)。如果有人有链接下载neo4j的预编译版本,将非常感谢。 neo4j其他版本的网页仅提供最新版本:https://neo4j.com/download/other-releases/

我尝试从github编译我自己的neo4j版本,但说实话它很混乱,因为目录树非常密集。似乎社区和企业版本都包含在同一个回购中,没有自述文件,所以我甚至不知道从哪里开始。

就插件而言,我已经尝试了预编译版本,并编译了我自己的版本。对于预编译,我已经按照git页面上的说明进行了开发。

https://github.com/neo4j-contrib/spatial#using-the-neo4j-spatial-server-plugin

我下载了jar文件,并将其复制到$ NEO4J_HOME / plugins / 然后我重新启动了neo4j服务器。最后,我进行其余调用以查看插件是否已加载,但我没有看到它。

$ http :7474/db/data/ -a neo4j
http: password for neo4j@localhost:7474: 
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Content-Length: 795
Content-Type: application/json; charset=UTF-8
Date: Fri, 01 Jul 2016 19:49:44 GMT
Server: Jetty(9.2.9.v20150224)

{
    "batch": "http://localhost:7474/db/data/batch", 
    "constraints": "http://localhost:7474/db/data/schema/constraint", 
    "cypher": "http://localhost:7474/db/data/cypher", 
    "extensions": {}, 
    "extensions_info": "http://localhost:7474/db/data/ext", 
    "indexes": "http://localhost:7474/db/data/schema/index", 
    "neo4j_version": "3.0.3", 
    "node": "http://localhost:7474/db/data/node", 
    "node_index": "http://localhost:7474/db/data/index/node", 
    "node_labels": "http://localhost:7474/db/data/labels", 
    "relationship": "http://localhost:7474/db/data/relationship", 
    "relationship_index": "http://localhost:7474/db/data/index/relationship", 
    "relationship_types": "http://localhost:7474/db/data/relationship/types", 
    "transaction": "http://localhost:7474/db/data/transaction"
}

编译版本给了我相同的结果,只需要更长的时间才能实现。我克隆了版本3.0.2的git repo,并执行以下操作:

git clone git://github.com/neo4j/spatial.git spatial
cd spatial
mvn clean package -Dmaven.test.skip=true install

注意:这个mvn命令实际上对我来说一度失败了,但经过一些谷歌搜索我发现这个命令有效

mvn clean compile package assembly:single -Dmaven.test.skip=true install

最后我跑

cp target/neo4j-spatial-0.17-neo4j-3.0.2-server-plugin.jar $NEO4J_HOME/plugins
$NEO4J_HOME/bin/neo4j restart

瞧,与以前完全相同的结果(没有插件列表)。

我从未在安装过程中遇到过这么多麻烦。我真的不想回到版本2. *因为我想利用python的新螺栓驱动程序,并获得最新和最好的性能。请非常感谢任何帮助。 (即使只是找到直接链接到neo4j预编译版本的存档也会对我有帮助。)

1 个答案:

答案 0 :(得分:0)

好的,所以我想出了几个可能导致我混淆的问题。

问题1: 如果以root用户身份启动服务器(sudo),则必须以root身份停止服务器!

问题2: 确保没有其他版本同时运行(使用默认端口7474)。

我认为这两个问题的组合是我问题的真正罪魁祸首。如果Neo4J在启动时进行某种检查,无论该端口是否已被使用,那将是很棒的。

此外,当尝试以原始用户以外的其他人停止服务时,它非常混乱,Neo4J显示以下输出:

$ sudo bin/neo4j start
Starting Neo4j.
WARNING: Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4j manual.
Started neo4j (pid 25418). By default, it is available at http://localhost:7474/
There may be a short delay until the server is ready.
See /opt/neo4j/neo4j-community-3.0.2/logs/neo4j.log for current status.

$ bin/neo4j stop
Neo4j not running
rm: remove write-protected regular file ‘/opt/neo4j/neo4j-community-3.0.2/run/neo4j.pid’? ^C

最后一行引起了我的注意,然后在运行之后

$ ps aux | grep neo

我发现Neo4j实际上正在运行。

就下载链接而言,在上面的评论中归功于William。 他指着我http://dist.neo4j.org/neo4j-community-3.0.2-unix.tar.gz, 我想如果他们想要其他的,可以改变网址中的版本号。

因此,我发现3.0.2空间插件确实出现在http://localhost:7474/db/data/对neo4j 3.0.3版的响应中。但是,为了安全起见,我将坚持使用neo4j 3.0.2版。