【问题标题】:Dependency version issue with Spring, Spring Neo4j and Neo4jSpring、Spring Neo4j 和 Neo4j 的依赖版本问题
【发布时间】:2014-06-21 12:34:56
【问题描述】:

我正在尝试设置一个使用 Spring-Neo4j 和 Neo4j 但无法解决依赖问题的 Java 项目。我正在使用 maven 进行依赖管理,并尝试了 Spring、Spring Neo4j 和 Neo4j 的几个版本组合。

春天:3.2.6.RELEASE

spring-data-neo4j:3.0.0.RELEASE

neo4j:2.0.1

application-context.xml 文件

<neo4j:config storeDirectory="data/graph.db" /> 

错误:

Caused by: org.neo4j.kernel.impl.storemigration.UpgradeNotAllowedByConfigurationException: Failed to start Neo4j with an older data store version. To enable automatic upgrade, please set configuration parameter "allow_store_upgrade=true"
at org.neo4j.kernel.impl.storemigration.ConfigMapUpgradeConfiguration.checkConfigurationAllowsAutomaticUpgrade(ConfigMapUpgradeConfiguration.java:39)
at org.neo4j.kernel.impl.storemigration.StoreUpgrader.attemptUpgrade(StoreUpgrader.java:71)
at org.neo4j.kernel.impl.nioneo.store.StoreFactory.tryToUpgradeStores(StoreFactory.java:144)
at org.neo4j.kernel.impl.nioneo.store.StoreFactory.newNeoStore(StoreFactory.java:119)
at org.neo4j.kernel.impl.nioneo.xa.NeoStoreXaDataSource.start(NeoStoreXaDataSource.java:323)
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:503)
... 64 more

我在neo4j.properties 文件中启用了allow_store_upgrade=true

【问题讨论】:

  • 您确定数据存储在升级前已经用旧版本彻底关闭了吗?

标签: spring neo4j spring-data-neo4j


【解决方案1】:

您的嵌入式 neo4j 很可能无法获取 neo4j 文件(this 文档说您需要手动设置它)。

像这样初始化你的 neo4j

<bean id="graphDatabaseService" class="org.neo4j.kernel.EmbeddedGraphDatabase"
        destroy-method="shutdown">
    <constructor-arg index="0" value="target/config-test"/>
<!-- optionally pass in neo4j-config parameters to the graph database
    <constructor-arg index="1">
        <map>
            <entry key="allow_store_upgrade" value="true"/>
        </map>
    </constructor-arg>
-->
</bean>

<neo4j:config graphDatabaseService="graphDatabaseService"/>

来源: http://docs.spring.io/spring-data/data-neo4j/docs/3.0.1.RELEASE/reference/html/setup.html#d0e3597

【讨论】:

    【解决方案2】:

    我正在尝试使用 spring-data-neo4j 3.1.1.RELEASE 和 neo4j 2.1.2,我认为这是不完整的。事实上,至少在这些版本中,map 不是可选的。此外,在 Dependencies 类型的构造函数中还有第三个强制参数。 问题是我真的不知道第三个参数是什么,而且不推荐使用 EmbeddedGraphDatabase 和 Dependecies。您知道以嵌入式模式启动 webapp(使用这些版本)的好方法吗?

    【讨论】:

    • @yatendra-goel 这是编写spring配置的好方法:link
    猜你喜欢
    • 2018-07-19
    • 2016-12-06
    • 1970-01-01
    • 2017-10-11
    • 1970-01-01
    • 1970-01-01
    • 2012-12-19
    • 2012-09-23
    • 1970-01-01
    相关资源
    最近更新 更多