我已经创建了一个简单的单元测试,但是IntelliJ错误地将它突出显示为红色。将其标记为错误

没有豆子?

如你所见,它通过了测试?所以它一定是自动连接的?


当前回答

如果你不想对你的代码做任何改变,只是为了让你的IDE满意。我通过将所有组件添加到Spring facet解决了这个问题。

创建一个名为“服务,处理器和路由器”的组或任何你喜欢的名称; 删除并重新创建“Spring Application Context”,使用之前创建的组作为父组。

其他回答

在类级别使用@EnableAutoConfiguration注释和@Component。它将解决这个问题。

例如:

@Component
@EnableAutoConfiguration  
public class ItemDataInitializer  {

    @Autowired
    private ItemReactiveRepository itemReactiveRepository;

    @Autowired
    private MongoOperations mongoOperations;
}

只需添加以下两个注释到您的POJO。

@ComponentScan
@Configuration
public class YourClass {
    //TODO
}

这是另一种“不能自动装配”。No Beans of…”可以通过安装插件来解决,在我的案例中是Spring Batch中的JobBuilderFactory。

只要你的测试通过了,你是好的,点击alt + enter,将光标移到错误上,在第一项的子菜单中,你会发现禁用检查,选择它

在最新的IntelliJ中,这似乎仍然是一个bug,与可能的缓存问题有关?

如果您将@Repository注释添加为上面提到的mk321,保存,然后删除注释并再次保存,这将解决问题。