Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j:javaapi索引<;节点>;。size()为0_Neo4j - Fatal编程技术网

Neo4j:javaapi索引<;节点>;。size()为0

Neo4j:javaapi索引<;节点>;。size()为0,neo4j,Neo4j,我试图使用Neo4j的JavaAPI,但我似乎被IndexHits卡住了。如果我使用Cypher查询数据库 START n=node:types(type="Process") RETURN n; 我得到了所有2087个“进程”类型的节点 在我的应用程序中,我有以下几行 Index<Node> nodeIndex = db.index().forNodes("types"); IndexHits<Node> hits = nodeIndex.get("type", "P

我试图使用Neo4j的JavaAPI,但我似乎被IndexHits卡住了。如果我使用Cypher查询数据库

START n=node:types(type="Process") RETURN n;
我得到了所有2087个“进程”类型的节点

在我的应用程序中,我有以下几行

Index<Node> nodeIndex = db.index().forNodes("types");
IndexHits<Node> hits = nodeIndex.get("type", "Process");
System.out.println("Node index size: " + hits.size());
但是当hits.size()==0时,这并不多。根据这一点,如果在
点击中有一些内容,那么这应该是可能的


提前谢谢你的帮助。

我想出来了。伙计,我觉得很尴尬

碰巧我设置了默认数据文件夹的DB_路径,而默认存储文件夹是默认数据文件夹加上graph.DB。当我试图从正确的DB_路径运行代码时,我得到了一个错误,即由于Neo4j服务器正在运行,所以有一个锁定文件。关机后,它工作得很好

因此,如果您碰巧看到以下错误,只需停止服务器并再次运行代码:

原因:org.neo4j.kernel.StoreLockException:无法创建锁文件
位于org.neo4j.kernel.StoreLocker.checkLock(StoreLocker.java:74)
位于org.neo4j.kernel.storeLockerLifecyLeadapter.start(storeLockerLifecyLeadapter.java:40)
在org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:491)


我在几个论坛上发现,您不能同时运行Neo4j服务器和使用Java API查询它。

如果您迭代结果并增加计数器以获得大小,会发生什么情况?我像这样迭代` for(Node process:hits){++resultCount;},我得到了0。是否可以共享您的graph.db文件夹?不幸的是,那是不可能的。有什么我需要寻找的吗?哦,在我尝试遍历
点击次数之前,我检查以下内容:
如果(db.index().existsForNodes(“type”))
,它的计算结果为
true
,那么确实存在一个索引。
 for(Node process : hits) { ... }