使用 spring boot 1.5.7 配置 mongo 和 neo4j 时出错
Error configuring mongo and neo4j with spring boot 1.5.7
我在 Spring 启动应用程序中使用 MongoDb 和 Neo4j。我最近通过 Spring Boot Gradle 插件从 1.2.6 更新到 1.5.7。
我有两个配置文件,一个用于 mongo,另一个用于 neo4j。更新 spring 引导版本后,我发现 @EnableMongoRepositories
和 @EnableNeo4jRepositories
在各自的配置文件中显示以下错误:
No constructor with 1 argument defined in class
'org.springframework.data.mongodb.repository.support.MongoRepositoryFactoryBean'
No constructor with 1 argument defined in class
'org.springframework.data.neo4j.repository.support.GraphRepositoryFactoryBean'
我在 neo4j 配置中有以下注释:
@Configuration
@EnableNeo4jRepositories("<packagename>.neo4j.repository")
@EnableTransactionManagement
public class DatabaseConfigurationNeo4j
extends Neo4jConfiguration
{
...
}
以及 mongo 配置中的以下注释:
@Configuration
@Profile("!" + Constants.SPRING_PROFILE_CLOUD)
@EnableMongoRepositories("<packagename>.repository")
@Import(value = MongoAutoConfiguration.class)
@EnableMongoAuditing(auditorAwareRef = "springSecurityAuditorAware")
public class DatabaseConfiguration extends AbstractMongoConfiguration
{
...
}
如果我从文件中删除这些 @EnableRepositories 行,这些错误将被删除,但是当我 运行 它时,存储库 bean 不会创建。我认为这些行是必要的,但不知道如何删除此错误。
谢谢。
将 spring-neo4j 更新到 4.2.8(不是 5.0.0,因为 neo4j 5.0.0 将与 spring-boot 2.0 M 及更高版本一起使用)和 spring-mongo 到 1.10.6 解决了配置问题。
我在 Spring 启动应用程序中使用 MongoDb 和 Neo4j。我最近通过 Spring Boot Gradle 插件从 1.2.6 更新到 1.5.7。
我有两个配置文件,一个用于 mongo,另一个用于 neo4j。更新 spring 引导版本后,我发现 @EnableMongoRepositories
和 @EnableNeo4jRepositories
在各自的配置文件中显示以下错误:
No constructor with 1 argument defined in class
'org.springframework.data.mongodb.repository.support.MongoRepositoryFactoryBean'No constructor with 1 argument defined in class 'org.springframework.data.neo4j.repository.support.GraphRepositoryFactoryBean'
我在 neo4j 配置中有以下注释:
@Configuration
@EnableNeo4jRepositories("<packagename>.neo4j.repository") @EnableTransactionManagement
public class DatabaseConfigurationNeo4j extends Neo4jConfiguration
{
...
}
以及 mongo 配置中的以下注释:
@Configuration
@Profile("!" + Constants.SPRING_PROFILE_CLOUD)
@EnableMongoRepositories("<packagename>.repository")
@Import(value = MongoAutoConfiguration.class)
@EnableMongoAuditing(auditorAwareRef = "springSecurityAuditorAware")
public class DatabaseConfiguration extends AbstractMongoConfiguration
{
...
}
如果我从文件中删除这些 @EnableRepositories 行,这些错误将被删除,但是当我 运行 它时,存储库 bean 不会创建。我认为这些行是必要的,但不知道如何删除此错误。
谢谢。
将 spring-neo4j 更新到 4.2.8(不是 5.0.0,因为 neo4j 5.0.0 将与 spring-boot 2.0 M 及更高版本一起使用)和 spring-mongo 到 1.10.6 解决了配置问题。