将neo4j外壳连接到java中的嵌入式neo4j

将neo4j外壳连接到java中的嵌入式neo4j,neo4j,Neo4j,[neo4j:2.1.3,Windows 7 64位,Java 7] 我希望能够使用neo4j shell连接到java中的嵌入式neo4j数据库。 正如建议的那样,添加属性remote\u shell\u enabled=“true”应该可以做到这一点 我按照建议进行了尝试,但我的shell无法连接到数据库,出现错误 原因:org.neo4j.kernel.StoreLockException:无法获取锁 在存储锁定文件上: ~\store\u锁。请确保没有 另一个进程正在使用这个数据库,并且

[neo4j:2.1.3,Windows 7 64位,Java 7]

我希望能够使用neo4j shell连接到java中的嵌入式neo4j数据库。 正如建议的那样,添加属性remote\u shell\u enabled=“true”应该可以做到这一点

我按照建议进行了尝试,但我的shell无法连接到数据库,出现错误

原因:org.neo4j.kernel.StoreLockException:无法获取锁 在存储锁定文件上: ~\store\u锁。请确保没有 另一个进程正在使用这个数据库,并且目录是 可写(即使是只读访问也需要)

位于org.neo4j.kernel.StoreLocker.checkLock(StoreLocker.java:82)

我在代码中设置了如下属性

graphDb = new GraphDatabaseFactory().newEmbeddedDatabaseBuilder(DBPATH).setConfig("remote_shell_enabled","true").newGraphDatabase();
此外,这样做会导致数据库不会通过shutdownhook关闭。相反,这个过程并没有结束,似乎关闭挂钩永远不会执行

但是,如果我使用下面的命令来启动属性,那么每次都会成功执行关闭挂钩

graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(DBPATH);


是否有其他方法启用shell对嵌入式数据库的访问。

要在端口5000处打开neo4j shell服务器,请使用以下命令启动数据库

new GraphDatabaseFactory().newEmbeddedDatabaseBuilder(DB_DIR)
            .setConfig(ShellSettings.remote_shell_enabled, "true")
            .setConfig(ShellSettings.remote_shell_port, "5000")
            .newGraphDatabase();
以及使用

neo4j-shell -port 5000

这样行吗?

谢谢彼得,行了。我用-path选项而不是主机端口启动shell。
neo4j-shell -port 5000