我已经创建了一个简单的单元测试,但是IntelliJ错误地将它突出显示为红色。将其标记为错误
没有豆子?
如你所见,它通过了测试?所以它一定是自动连接的?
我已经创建了一个简单的单元测试,但是IntelliJ错误地将它突出显示为红色。将其标记为错误
没有豆子?
如你所见,它通过了测试?所以它一定是自动连接的?
当前回答
我删除了这段代码。不再有错误
另一种检查方法: 将@Service注释添加到Repository类中,它应该可以工作。
其他回答
IntelliJ IDEA Ultimate
将您的主类添加到IntelliJ Spring应用程序上下文中,例如Application.java
文件->项目结构..
左边: 项目设置->模块
右边:在你的包结构中找到 Spring并添加+ Application.java
我在spring引导应用程序中解决这个问题的方法是打开spring应用程序上下文,并手动为缺失的自动连接bean添加类!
(通过项目结构菜单或弹簧工具窗口访问…编辑“Spring Application Context”)
因此,SpringApplicationContext不仅仅包含我的ExampleApplication spring配置,它还包含了缺失的Bean:
SpringApplicationContext:
ExampleApplication.java MissingBeanClass.java
et voilà:错误信息消失!
如果你不想对你的代码做任何改变,只是为了让你的IDE满意。我通过将所有组件添加到Spring facet解决了这个问题。
创建一个名为“服务,处理器和路由器”的组或任何你喜欢的名称; 删除并重新创建“Spring Application Context”,使用之前创建的组作为父组。
在bean配置文件中放置@Component或@configuration似乎可以工作,例如:
@Configuration
public class MyApplicationContext {
@Bean
public DirectoryScanner scanner() {
return new WatchServiceDirectoryScanner("/tmp/myDir");
}
}
@Component
public class MyApplicationContext {
@Bean
public DirectoryScanner scanner() {
return new WatchServiceDirectoryScanner("/tmp/myDir");
}
}
我只能使用@EnableAutoConfiguration来解决它,但是这个错误没有功能上的影响。