0

I am new to Neo4j Graph Database and I want to create CyperQueries from java Application . I am using the above neo4j manual

http://docs.neo4j.org/chunked/milestone/query-create.html

I am creating nodes from java APplication as follow

public class CreateQuery
{
    public static final String DBPATH="D:/Neo4j/CQL";

    public static void main(String args[])
    {
        GraphDatabaseService path=new EmbeddedGraphDatabase(DBPATH);
        Transaction tx=path.beginTx();
        try
        {
        Map<String, Object> props  = new HashMap<String, Object>();
        props .put( "Firstnamename", "Sharon" );
        props .put( "lastname", "Eunis" );

        Map<String, Object> params = new HashMap<String, Object>();
        params.put( "props", props  );

        ExecutionEngine engine=new ExecutionEngine(path);
        ExecutionResult result=engine.execute( "create ({props})", params );
        System.out.println(result);
        tx.success();
        } 
        finally
        {
             tx.finish();
             path.shutdown();

        }
    }
}

I am getting the above error. I am not aware of this errors, please can any 1 help in solving as soon as posible .

Exception in thread "main" java.lang.NoClassDefFoundError: com/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Builder
    at org.neo4j.cypher.internal.LRUCache.<init>(LRUCache.scala:30)
    at org.neo4j.cypher.ExecutionEngine$$anon$1.<init>(ExecutionEngine.scala:84)
    at org.neo4j.cypher.ExecutionEngine.<init>(ExecutionEngine.scala:84)
    at com.neo4j.CreateQuery.main(CretaeQuery.java:33)
Caused by: java.lang.ClassNotFoundException: com.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 4 more

3 Answers 3

1

You may need to add the latest release of this library (ConcurrentLinkedHashMap for Java):

http://concurrentlinkedhashmap.googlecode.com/files/concurrentlinkedhashmap-lru-1.3.1.jar

Sign up to request clarification or add additional context in comments.

Comments

0

The code you shared works fine. I think the problem is with your import statements. They should be like this:

import java.util.HashMap;
import java.util.Map;
import org.neo4j.cypher.javacompat.ExecutionEngine;
import org.neo4j.cypher.javacompat.ExecutionResult;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Transaction;
import org.neo4j.kernel.EmbeddedGraphDatabase;

Comments

0

It looks like a library error. Perhaps you have imported the wrong version of something?

Just in case, I should point out that you are meant to use the GDB factory for building an embedded instance:

graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH);

Not sure that it will make any difference.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.