Java neo4j lucene得分始终为0.0

Java neo4j lucene得分始终为0.0,java,lucene,neo4j,Java,Lucene,Neo4j,我们试图找到lucene分配给neo4j查询结果的分数 IndexManager index = graphDb.index(); Index<Node> fulltextMovies = index.forNodes("Restaurant"); QueryContext query = new QueryContext("name:" + term + "*"); TermQuery t = new TermQuery(new Term("name", term + "m*"))

我们试图找到lucene分配给neo4j查询结果的分数

IndexManager index = graphDb.index();
Index<Node> fulltextMovies = index.forNodes("Restaurant");
QueryContext query = new QueryContext("name:" + term + "*");
TermQuery t = new TermQuery(new Term("name", term + "m*"));

IndexHits<Node> hits = fulltextMovies.query(t);
System.out.println(hits.currentScore());
代码的最后一行始终打印0.0

我们必须定义自定义分数才能使其正常工作吗?据我所知,lucene会给每个搜索结果打分。如果是的话,。我应该根据我的查询结果看到lucene分数。这可能吗?

您只能在使用索引查询中的迭代器时使用currentScore。例如:

try (IndexHits<Node> hits = index.query(t)) {
    for (Node node : hits) {
        System.out.println(node + " " + hits.currentScore());
    }
}

谢谢,斯蒂芬。我将尝试此解决方案并更新此线程:-我尝试了你提到的步骤,但结果是一样的。我现在所有的搜索项目都得到了0.0分。