嵌入式 Neo4j 中的 SpatialRepository

SpatialRepository in Embedded Neo4j

谁能回答这个问题。是否可以在嵌入模式的 spring 引导应用程序中拥有空间存储库?

  @Bean
       public GraphDatabaseService graphDatabaseService() {
          return new GraphDatabaseFactory().newEmbeddedDatabase("neo4j.db");
   }

只需添加

<dependency>
  <groupId>org.neo4j</groupId>
  <artifactId>neo4j-spatial</artifactId>
  <version>0.9</version>
</dependency>

到你的类路径?

我一直收到错误

原因:java.lang.IllegalArgumentException:未找到索引提供程序 'spatial'。可能预期的提供程序(或它的多个依赖项)不在类路径中或加载失败。 在 org.neo4j.kernel.impl.coreapi.IndexManagerImpl.getIndexProvider(IndexManagerImpl.java:91) 在 org.neo4j.kernel.impl.coreapi.IndexManagerImpl.findIndexConfig(IndexManagerImpl.java:142) 在 org.neo4j.kernel.impl.coreapi.IndexManagerImpl.getOrCreateIndexConfig(IndexManagerImpl.java:209) 在 org.neo4j.kernel.impl.coreapi.IndexManagerImpl.getOrCreateNodeIndex(IndexManagerImpl.java:314) 在 org.neo4j.kernel.impl.coreapi.IndexManagerImpl.forNodes(IndexManagerImpl.java:302) 在 org.springframework.data.neo4j.support.DelegatingGraphDatabase.createIndex(DelegatingGraphDatabase.java:163) 在 org.springframework.data.neo4j.support.index.IndexProviderImpl.createIndex(IndexProviderImpl.java:91) 在 org.springframework.data.neo4j.support.index.IndexProviderImpl.getIndex(IndexProviderImpl.java:68) 在 org.springframework.data.neo4j.support.index.IndexProviderImpl.getIndex(IndexProviderImpl.java:108) 在 org.springframework.data.neo4j.support.mapping.EntityIndexCreator$2.doWithPersistentProperty(EntityIndexCreator.java:61) 在 org.springframework.data.neo4j.support.mapping.EntityIndexCreator$2.doWithPersistentProperty(EntityIndexCreator.java:57) 在 org.springframework.data.mapping.model.BasicPersistentEntity.doWithProperties(BasicPersistentEntity.java:294) 在 org.springframework.data.neo4j.support.mapping.EntityIndexCreator.ensureEntityIndexes(EntityIndexCreator.java:57) 在 org.springframework.data.neo4j.support.mapping.Neo4jMappingContext.updateStoredEntityType(Neo4jMappingContext.java:78) 在 org.springframework.data.neo4j.support.mapping.Neo4jMappingContext.addPersistentEntity(Neo4jMappingContext.java:71) 在 org.springframework.data.neo4j.support.mapping.Neo4jMappingContext.addPersistentEntity(Neo4jMappingContext.java:49) 在 org.springframework.data.mapping.context.AbstractMappingContext.addPersistentEntity(AbstractMappingContext.java:257) 在 org.springframework.data.mapping.context.AbstractMappingContext.initialize(AbstractMappingContext.java:373) 在 org.springframework.data.neo4j.support.mapping.Neo4jMappingContext.initialize(Neo4jMappingContext.java:111) 在 org.springframework.data.mapping.context.AbstractMappingContext.afterPropertiesSet(AbstractMappingContext.java:363) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1625) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1562) ... 还有 62 个

当然,你可以有 spring data neo4j + spring boot.

你可以在这里找到我写的代码:https://github.com/inserpio/neo4art 还有一个简短的 post 描述我是如何做到的:https://inserpio.wordpress.com/2014/09/21/neo4art-moves-to-cloud-foundry-at-springone-2gx-2014/

希望对您有所帮助!

干杯, 洛伦佐

在您的 maven pom 中使用此存储库

            <repository>
                        <id>neo4j-contrib-releases</id>
                        <url>https://raw.github.com/neo4j-contrib/m2/master/releases</url>
                        <releases>
                            <enabled>true</enabled>
                        </releases>
                        <snapshots>
                            <enabled>false</enabled>
                        </snapshots>
                    </repository>
                    <repository>
                        <id>neo4j-contrib-snapshots</id>
                        <url>https://raw.github.com/neo4j-contrib/m2/master/snapshots</url>
                        <releases>
                            <enabled>false</enabled>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                        </snapshots>
                    </repository>

具有依赖性

                <dependency>
                    <groupId>org.neo4j</groupId>
                    <artifactId>neo4j-spatial</artifactId>
                    <version>0.13-neo4j-2.1.2</version>
                </dependency>