我正在尝试创建用户定义的过程。
我从这个github存储库https://github.com/neo4j-examples/neo4j-procedure-template获得了示例项目。我创建了jar文件并移动到/ var / lib / neo4j / plugins 我收到了未知功能错误
如果有人知道它请帮助我 我也重新启动了我的neo4j
neo4j> MATCH (p: Person) WHERE p.age = 36 RETURN org.neo4j.examples.join(collect(p.names));
Unknown function 'org.neo4j.examples.join' (line 1, column 44 (offset: 43))
"MATCH (p: Person) WHERE p.age = 36 RETURN org.neo4j.examples.join(collect(p.names));"
答案 0 :(得分:0)
如果你看一下这个函数的java方法的注释,你会看到描述注释,你应该这样做:example.join(...)
而不是org.neo4j.examples.join
。
此函数位于java包example
下,函数名称为join
,因此它为您提供example.join
您可以通过在UserFunction批注中添加name
attribut来手动定义调用函数的方式。像这样:
@UserFunction( "test.nodeList" )
public List<Object> nodeList()
{
Result result = db.execute( "MATCH (n) RETURN n LIMIT 1" );
Object node = result.next().get( "n" );
return Collections.singletonList( node );
}
并在密码中将其称为:
RETURN test.toSet(['a', 'b'])