Nar*_*esh 3 hibernate spring-boot
我已经尝试了该平台上提供的所有答案,但没有成功。我正在执行此命令行运行程序,但运行方法未调用。
我感谢你的帮助。
谢谢。
我尝试过下面的解决方案,但得到了这个异常。
第一:在 Bootstrap 类(具有 SpringApplication.run(..., args) 的 main 方法的类)中,您可以在 @SpringBootApplication 注释处添加属性 scanBasePackages :
@SpringBootApplication(scanBasePackages = {"com.project.data.runner"}) 这将告诉 Spring 在 com.project.data.runner 包中查找组件。
您的 Bootstrap 类在包中com.project.demo.data
您的命令行运行程序位于软件包中com.project.data.runner
Spring 将扫描 的子包中的组件com.project.demo.data
,即 中的组件com.project.demo.data.*
,这就是您的命令行运行程序从未运行的原因。Spring从未找到过他。
你有一些选择,但我会说两个:
第一main
:在您的 Bootstrap 类(具有with 方法的类)中,您可以在注释处SpringApplication.run(..., args)
添加属性:scanBasePackages
@SpringBootApplication
@SpringBootApplication(scanBasePackages = {"com.project.data.runner"})
Run Code Online (Sandbox Code Playgroud)
这将告诉 Spring 也在包中查找组件com.project.data.runner
。
或者
第二:将命令行运行器从 移动com.project.data.runner
到com.project.demo.data.runner
(或类似的东西com.project.demo.data
)
更新
由于我们已经解决了聊天中的问题,我将用解决方案更新答案。
由于您使用的是 Spring Data JPA 存储库,因此如果您的存储库不在 Bootstrap 类所在的包或子包下,那么您必须添加到@EnableJpaRepositories
一个@Configuration
类并显式配置您的存储库所在的包。
您的引导类将如下所示:
@SpringBootApplication(scanBasePackages = {"com.project.data.runner"})
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6123 次 |
最近记录: |