我已经创建了一个简单的单元测试,但是IntelliJ错误地将它突出显示为红色。将其标记为错误
没有豆子?
如你所见,它通过了测试?所以它一定是自动连接的?
我已经创建了一个简单的单元测试,但是IntelliJ错误地将它突出显示为红色。将其标记为错误
没有豆子?
如你所见,它通过了测试?所以它一定是自动连接的?
当前回答
有时——就我而言——原因是一个错误的输入。我不小心导入了
import org.jvnet.hk2.annotations.Service
而不是
import org.springframework.stereotype.Service
盲目地接受Idea建议的导入中的第一个选择。第一次发生的时候我花了几分钟:-)
其他回答
在使用@SpringBootApplication注释创建SpringBoot应用程序时,我也遇到了同样的问题。该注释根据spring引用表示@Configuration、@EnableAutoConfiguration和@ComponentScan。
正如预期的那样,新的注释工作正常,我的应用程序运行顺利,但Intellij一直抱怨未实现的@Autowire依赖项。当我重新分别使用@Configuration、@EnableAutoConfiguration和@ComponentScan时,错误就停止了。Intellij 14.0.3(很可能是更早的版本)似乎还没有配置为识别@SpringBootApplication注释。
现在,如果错误对您的影响如此之大,那么就恢复到那三个单独的注释。否则,忽略Intellij…您的依赖项解析配置正确,因为您的测试通过了。
永远记得……
人永远比机器伟大。
我也遇到过这个问题,并通过删除Spring Facet来解决它:
File ->项目结构 选择方面 拆卸弹簧
好运!
在类级别使用@EnableAutoConfiguration注释和@Component。它将解决这个问题。
例如:
@Component
@EnableAutoConfiguration
public class ItemDataInitializer {
@Autowired
private ItemReactiveRepository itemReactiveRepository;
@Autowired
private MongoOperations mongoOperations;
}
您是否检查过在服务实现之上使用了@Service注释? 这对我很管用。
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements UserServices {}
在最新的IntelliJ中,这似乎仍然是一个bug,与可能的缓存问题有关?
如果您将@Repository注释添加为上面提到的mk321,保存,然后删除注释并再次保存,这将解决问题。