2017-04-04 10 views
1

変数に問題があれば、私は知らない私は、Javaに組み込まれたのNeo4jを使用してのNeo4jに挿入ノードをしようとしているが、私はこのエラーを取得し、私はのNeo4j 3.1.1とNetBeans 7java.lang.NoSuchMethodErrorを解決する方法:org.neo4j.helpers.collection.Iterables.toList(Ljava/lang/Iterable;)Ljava/util/List?

Exception in thread "main" java.lang.NoSuchMethodError: org.neo4j.helpers.collection.Iterables.toList(Ljava/lang/Iterable;)Ljava/util/List; 
    at org.neo4j.graphdb.factory.GraphDatabaseFactory.<init>(GraphDatabaseFactory.java:49) 
    at twitter4j.EmbeddeNeo4j.createDb(EmbeddeNeo4j.java:41) 

を使用していますDB_PATH = "D:\\Neo4j CE 3.1.1\\graph database" 変数DB_PATHはどうすればよいですか? コードは次のとおりです。

void createDb() { 
     clearDb(); 
     // start DB 
     graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH); 
     registerShutdownHook(graphDb); 

     // start Transaction 
     Transaction tx = graphDb.beginTx(); 
     try { 
      // adding data 
      firstNode = graphDb.createNode(); 
      firstNode.setProperty("message", "Hello, "); 
      secondNode = graphDb.createNode(); 
      secondNode.setProperty("message", "World!"); 

      relationship = firstNode.createRelationshipTo(secondNode, RelTypes.KNOWS); 
      relationship.setProperty("message", "brave Neo4j "); 

      // reading data 
      System.out.println(firstNode.getProperty("message")); 
      System.out.println(relationship.getProperty("message")); 
      System.out.println(secondNode.getProperty("message")); 

      greeting = (String) firstNode.getProperty("message") + (String) relationship.getProperty("message") + (String) secondNode.getProperty("message"); 

      Iterator<Relationship> it = firstNode.getRelationships().iterator(); 
      while(it.hasNext()) { 
       Relationship r = it.next(); 
       Node[] nodes = r.getNodes(); 
       System.out.println(nodes[0].getProperty("message") + " " + r.getProperty("message") + " " + nodes[1].getProperty("message")); 
      } 

      tx.success(); 
     } finally { 
      tx.terminate(); 
     } 

    } 

private void clearDb() { 
    try { 
     FileUtils.deleteRecursively(new File(DB_PATH)); 
    } catch (IOException e) { 
     throw new RuntimeException(e); 
    } 
} 
+1

互換性のない瓶のように見えます – Jens

+0

あなたのクラスパスにはどのneo4j瓶がありますか? – Jens

+0

私はこのjarファイルを持っています。neo4j-graphdb-api-3.0.1.jar – hiline

答えて

0

私は基本的にこの同じ問題を抱えていました。それはCLASSPATHに古いバージョンのNeo4Jが存在することに起因していました。 (IDEを使って古いターゲットをビルドする前に、古いターゲットが削除されていないことがわかりました)。

関連するすべての古いバージョンをフラッシュしていることを確認してください。瓶。

関連する問題