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

没有豆子?

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


当前回答

在我的情况下,我试图@Autowired的目录不在同一级别,

将其设置在同一结构层后,错误消失了

希望对大家有所帮助!

其他回答

在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");
    }
}

我使用的是spring-boot 2.0和intellij 2018.1.1终极版,我也遇到了同样的问题。

我通过在主应用程序类中放置@EnableAutoConfiguration来解决这个问题

@SpringBootApplication
@EnableAutoConfiguration
class App{
/**/
}

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

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

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

我在申请的时候也遇到过类似的问题。 当我添加注释时,不正确的高亮显示消失了。

@ContextConfiguration(classes = {...})