Java から Neo4j に接続しようとすると、次のエラーが発生します。
スレッド「メイン」で例外 java.lang.RuntimeException: org.neo4j.kernel.InternalAbstractGraphDatabase.run(InternalAbstractGraphDatabase.java:323) で org.neo4j.kernel.EmbeddedGraphDatabase、/data/graph.db を開始中にエラーが発生しました。 kernel.EmbeddedGraphDatabase.(EmbeddedGraphDatabase.java:100) at org.neo4j.graphdb.factory.GraphDatabaseFactory$1.newDatabase(GraphDatabaseFactory.java:92) at org.neo4j.graphdb.factory.GraphDatabaseBuilder.newGraphDatabase(GraphDatabaseBuilder.java:197) org.neo4j.graphdb.factory.GraphDatabaseFactory.newEmbeddedDatabase(GraphDatabaseFactory.java:69) で .....
原因: org.neo4j.kernel.lifecycle.LifecycleException: コンポーネント 'org.neo4j.kernel.impl.transaction.XaDataSourceManager@4514ba77' は正常に初期化されましたが、開始に失敗しました。添付の原因例外を参照してください。org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:504) で org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:115) で org.neo4j.kernel.InternalAbstractGraphDatabase.run で(InternalAbstractGraphDatabase.java:300)
... 7 more Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component
「org.neo4j.kernel.impl.nioneo.xa.NeoStoreXaDataSource@2c86c977」は正常に初期化されましたが、開始に失敗しました。添付の原因例外を参照してください。org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:504) で org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:115) で org.neo4j.kernel.impl.transaction で.XaDataSourceManager.start(XaDataSourceManager.java:165) at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:498)
... 9 more Caused by: java.lang.IllegalArgumentException: No schema index provider org.neo4j.kernel.api.index.SchemaIndexProvider
見つかった。クラスパスで利用可能なカーネル拡張:
クラス パス エントリ: /...../java/....xyz.jar at org.neo4j.kernel.api.index.SchemaIndexProvider$2.select(SchemaIndexProvider.java:136) at org.neo4j.kernel.api .index.SchemaIndexProvider$2.select(SchemaIndexProvider.java:128) at org.neo4j.kernel.extension.KernelExtensions.resolveDependency(KernelExtensions.java:207) at org.neo4j.kernel.InternalAbstractGraphDatabase$DependencyResolverImpl.resolveDependency(InternalAbstractGraphDatabase.java: 1403) org.neo4j.kernel.impl.nioneo.xa.NeoStoreXaDataSource.start(NeoStoreXaDataSource.java:311) で org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:498) で ... 12もっと
私は Ne04j-2.0.0-M05 バージョンを使用しており、Linux マシンで Java 7 の下で Java コードを実行しています。Windowsマシンでも同じjarファイルとJavaコードがうまく機能します。Web 管理インターフェイスはうまく機能します (したがって、org.neo4j.server.database.location と org.neo4j.server.webadmin.data.uri で同じパスを指定したため、db へのパスは問題にならない可能性があります)。
接続に使用したJavaコードは次のとおりです。
String dbpath = "/NEO4J_HOME/data/graph.db/";
graphdb = new GraphDatabaseFactory().newEmbeddedDatabase(dbpath);
java.lang.IllegalArgumentException: No schema index provider org.neo4j.kernel.api.index.SchemaIndexProvider foundの原因を教えてください。