Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.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
Java ExecutionEngine无法识别参数_Java_Neo4j_Cypher - Fatal编程技术网

Java ExecutionEngine无法识别参数

Java ExecutionEngine无法识别参数,java,neo4j,cypher,Java,Neo4j,Cypher,我正在使用neo4j1.8.RC1,并试图为我的图中的节点生成聚类系数 我有以下代码,据我所知,这些代码在Linux系统上工作,但在我的Windows机器上不工作: Map<String, Object> params = new HashMap<String, Object>(); String query; String typeString; if (type == <some type>) { typeString = "TYPE1"; }

我正在使用neo4j1.8.RC1,并试图为我的图中的节点生成聚类系数

我有以下代码,据我所知,这些代码在Linux系统上工作,但在我的Windows机器上不工作:

Map<String, Object> params = new HashMap<String, Object>();

String query;
String typeString;

if (type == <some type>) {
    typeString = "TYPE1";
}
else {
    typeString = "TYPE2";
}

params.put("myid", userid);
query = "start a=node(*) match (a)-[:"+ typeString +"]-(b) WITH a, count(distinct b) as n "
        + "match (a)-[:" + typeString + "]-()-[r:"+ typeString+"]-()-[:"+typeString+"]-(a) where a.thisId! = {myid} return n, count(distinct r) as relcount";

ExecutionEngine engine = new ExecutionEngine(graphDb);
ExecutionResult result = engine.execute(query, params);

我已经通过并确认了它在那里。发生了什么事?

正如上面的评论所指出的,通过从1.8.RC1更新到1.8.2解决了这个问题。虽然我没有错误报告,但这显然是Neo4j中的一个错误,在这些版本之间的某个地方得到了解决。

“我正在使用Neo4j 1.8.RC1”--你是说1.9 RC1吗?为什么要使用1.8RC1?1.8已经稳定了很长一段时间。他们的版本是1.8.2。您很可能正在经历一个在1.8.RC1和1.8.2之间修复的bug。简单的回答是,升级是非常重要的。如果有一个明确的问题需要解决,可以,但是升级一个在目标环境中工作的系统不是一个选项。我建议设置一个开发环境,并根据1.8.2测试代码,看看问题是否得到解决。如果问题消失了,那么您只能选择升级。升级是不平凡的,是的,但也不是不可能的。升级neo4j是一个二进制的替代品。您必须进行测试,但您需要准备接受软件更新以修复bug。这就是软件的本质,我同意这是软件的本质。正如我所说的,我准备进行必要的bug修复更新,但是由于代码在目标环境中运行良好,所以我对更新非常犹豫。也就是说,迁移到1.8.2似乎已经解决了这个问题,因此我也将在目标环境中进行更新。谢谢
Exception in thread "main" java.lang.RuntimeException:    org.neo4j.cypher.ParameterNotFoundException: Expected a parameter named myid