1

任何人都可以帮我解决以下异常吗?我只是想通过一个jave程序在neo4j db中创建节点。但得到例外,

INFO: Starting Neo Server on port [7474] with [40] threads available
2013-09-27 15:23:59.154:INFO::Logging to STDERR via org.mortbay.log.StdErrLog
Sep 27, 2013 3:23:59 PM org.neo4j.server.logging.Logger log
INFO: Using database at C:\neo4j-community-1.9.3_bup\data\graph.db
Exception in thread "main" java.lang.NoSuchFieldError: remote_shell_enabled
    at org.neo4j.server.database.Database.createDatabase(Database.java:77)
    at org.neo4j.server.database.Database.<init>(Database.java:55)
    at org.neo4j.server.NeoServerWithEmbeddedWebServer.startDatabase(NeoServerWithEmbeddedWebServer.java:179)
    at org.neo4j.server.NeoServerWithEmbeddedWebServer.start(NeoServerWithEmbeddedWebServer.java:93)
    at org.neo4j.server.Bootstrapper.start(Bootstrapper.java:87)
    at org.neo4j.server.Bootstrapper.start(Bootstrapper.java:76)
    at com.Neo4J.src.EmbeddedNeo4j.createDb(EmbeddedNeo4j.java:70)
    at com.Neo4J.src.EmbeddedNeo4j.main(EmbeddedNeo4j.java:42)

我的程序代码是,

new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH).shutdown();
createLock();
Map<String, String> config = new HashMap<String, String>();
config.put( "neostore.nodestore.db.mapped_memory", "10M" );
config.put( "string_block_size", "60" );
config.put( "array_block_size", "300" );
config.put( "remote_shell_enabled", "false" );
// lock.release();
graphDb = new GraphDatabaseFactory()
    .newEmbeddedDatabaseBuilder(DB_PATH)
    .setConfig( config )
    .newGraphDatabase();
Configurator configurator = new ServerConfigurator((GraphDatabaseAPI)graphDb);      

configurator.configuration().setProperty(Configurator.WEBSERVER_ADDRESS_PROPERTY_KEY, "127.0.0.1");

configurator.configuration().setProperty(Configurator.WEBSERVER_PORT_PROPERTY_KEY, 7474);

WrappingNeoServerBootstrapper bootstrapper = new WrappingNeoServerBootstrapper((GraphDatabaseAPI)graphDb, configurator);
bootstrapper.start();

新的例外,

Exception in thread "main" java.lang.NoClassDefFoundError: Lorg/neo4j/graphdb/factory/GraphDatabaseSetting$BooleanSetting;
    at java.lang.Class.getDeclaredFields0(Native Method)
    at java.lang.Class.privateGetDeclaredFields(Unknown Source)
    at java.lang.Class.getDeclaredFields(Unknown Source)
    at org.neo4j.kernel.configuration.AnnotatedFieldHarvester.findStatic(AnnotatedFieldHarvester.java:41)
    at org.neo4j.kernel.configuration.AnnotationBasedConfigurationMigrator.<init>(AnnotationBasedConfigurationMigrator.java:40)
    at org.neo4j.kernel.configuration.Config.<init>(Config.java:89)
    at org.neo4j.kernel.InternalAbstractGraphDatabase.<init>(InternalAbstractGraphDatabase.java:218)
    at org.neo4j.kernel.EmbeddedGraphDatabase.<init>(EmbeddedGraphDatabase.java:103)
    at org.neo4j.graphdb.factory.GraphDatabaseFactory$1.newDatabase(GraphDatabaseFactory.java:88)
    at org.neo4j.graphdb.factory.GraphDatabaseBuilder.newGraphDatabase(GraphDatabaseBuilder.java:207)
    at org.neo4j.graphdb.factory.GraphDatabaseFactory.newEmbeddedDatabase(GraphDatabaseFactory.java:69)
    at com.Neo4J.src.EmbeddedNeo4j.createDb(EmbeddedNeo4j.java:52)
    at com.Neo4J.src.EmbeddedNeo4j.main(EmbeddedNeo4j.java:42)

现在例外来了,

Exception in thread "main" java.lang.NoSuchMethodError: org.neo4j.graphdb.factory.GraphDatabaseSetting$BooleanSetting.<init>(Ljava/lang/String;)V
    at org.neo4j.shell.ShellSettings.<clinit>(ShellSettings.java:37)
    at sun.misc.Unsafe.ensureClassInitialized(Native Method)
    at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(Unknown Source)
    at sun.reflect.ReflectionFactory.newFieldAccessor(Unknown Source)
    at java.lang.reflect.Field.acquireFieldAccessor(Unknown Source)
    at java.lang.reflect.Field.getFieldAccessor(Unknown Source)
    at java.lang.reflect.Field.get(Unknown Source)
    at org.neo4j.kernel.configuration.AnnotatedFieldHarvester.findStatic(AnnotatedFieldHarvester.java:47)
    at org.neo4j.kernel.configuration.AnnotationBasedConfigurationMigrator.<init>(AnnotationBasedConfigurationMigrator.java:40)
    at org.neo4j.kernel.configuration.Config.<init>(Config.java:89)
    at org.neo4j.kernel.InternalAbstractGraphDatabase.<init>(InternalAbstractGraphDatabase.java:218)
    at org.neo4j.kernel.EmbeddedGraphDatabase.<init>(EmbeddedGraphDatabase.java:103)
    at org.neo4j.graphdb.factory.GraphDatabaseFactory$1.newDatabase(GraphDatabaseFactory.java:88)
    at org.neo4j.graphdb.factory.GraphDatabaseBuilder.newGraphDatabase(GraphDatabaseBuilder.java:207)
    at org.neo4j.graphdb.factory.GraphDatabaseFactory.newEmbeddedDatabase(GraphDatabaseFactory.java:69)
    at com.Neo4J.src.EmbeddedNeo4j.createDb(EmbeddedNeo4j.java:49)
    at com.Neo4J.src.EmbeddedNeo4j.main(EmbeddedNeo4j.java:39)
4

0 回答 0