Spring boot 如果将我的Spring数据存储库移动到Spring引导应用程序的另一个包中,为什么找不到我的Spring数据存储库?

Spring boot 如果将我的Spring数据存储库移动到Spring引导应用程序的另一个包中,为什么找不到我的Spring数据存储库?,spring-boot,spring-data,Spring Boot,Spring Data,我根据这些有用的spring示例(导入入门内容)在Eclipse中创建了一个新项目。称为“gs访问数据rest完成” 可以找到参考和完整代码: 在保持示例不变的情况下,除了使用WAR而不是JAR打包之外,其他一切都很好。调用$curl时http://localhost:8080/,我将获得可用资源的公开信息 $ curl http://localhost:8080/ { "_links" : { "people" : { "href" : "http://localhos

我根据这些有用的spring示例(导入入门内容)在Eclipse中创建了一个新项目。称为“gs访问数据rest完成”

可以找到参考和完整代码:

在保持示例不变的情况下,除了使用WAR而不是JAR打包之外,其他一切都很好。调用
$curl时http://localhost:8080/
,我将获得可用资源的公开信息

$ curl http://localhost:8080/
{
  "_links" : {
    "people" : {
      "href" : "http://localhost:8080/name{?page,size,sort}",
      "templated" : true
    },
"profile" : {
  "href" : "http://localhost:8080/alps"
    }
  }
但是,当通过Eclipse的重构-->移动命令将
PersonRepository
移动到另一个包中(例如
myRepos
)时,资源将不再可访问

curl的响应是:

$ curl http://localhost:8080/
{
  "_links" : {
    "profile" : {
      "href" : "http://localhost:8080/alps"
    }
  }
}
据我所知,Spring会自动扫描存储库。因为主类使用注释,所以所有内容都应该由spring自己查找

我错过了什么?我必须添加一些特殊的XML配置文件还是在某处添加另一个配置类?还是我必须更新application.properties才能完成某项任务


也许有人有一些有用的经验,她或他可以与我分享。谢谢。

在您的配置类上使用以下注释,尝试指定扫描存储库时要使用的基本包:
@EnableJpaRepositories(basePackages=“your.base.repository.package”)

。非常感谢。我在理解我的配置类时遇到了一个问题,因为我没有一个类具有
@Configuration
。在我的简单项目中,它是包含
@SpringBootApplication
注释的同一个类,它实际上是主类。在这里,我让Spring发现所有存储库。