Answers:
使用它们的注释创建Spring Boot应用程序时,我遇到了同样的问题@SpringBootApplication。该注释表示@Configuration,@EnableAutoConfiguration并且@ComponentScan根据弹簧的参考。
正如预期的那样,新注释正常工作,我的应用程序运行平稳,但是Intellij一直抱怨未实现的@Autowire依赖关系。当我改回使用@Configuration,@EnableAutoConfiguration并@ComponentScan单独的错误停止。看来Intellij 14.0.3(很可能还有早期版本)尚未配置为识别@SpringBootApplication注释。
现在,如果错误对您的影响如此之大,请恢复为这三个单独的注释。否则,请忽略Intellij ...由于测试通过,因此您的依赖关系解析已正确配置。
总记得...
人永远大于机器。
@SpringBootApplication我收到此错误。我通过使用@ scanBasePackages参数来@SpringBootApplication指定@JaõsMatos的建议,并指定了应扫描的包/名称空间。
                    @Repository在存储库类上添加Spring注释。
我知道没有此注释也可以使用。但是,如果添加此选项,IntelliJ将不会显示错误。
@Repository
public interface YourRepository ...
...如果您将Spring Data与扩展Repository类一起使用,则将成为冲突页面。然后,您必须指明显式的分页符。
import org.springframework.data.repository.Repository;
...
@org.springframework.stereotype.Repository
public interface YourRepository extends Repository<YourClass, Long> {
    ...
}接下来,您可以自动连接存储库而不会出错。
@Autowired
YourRepository yourRepository;这可能不是一个好的解决方案(我想您正在尝试两次注册存储库)。但是为我工作,不要显示错误。
也许可以在新版本的IntelliJ中修复:https : //youtrack.jetbrains.com/issue/IDEA-137023
有时您需要指出@ComponentScan应该在哪里扫描组件。您可以通过将软件包作为此批注的参数来传递,例如:
@ComponentScan(basePackages={"path.to.my.components","path.to.my.othercomponents"})但是,如前所述,@ SpringBootApplication批注将替换@ComponentScan,因此在这种情况下,您必须执行相同的操作:
@SpringBootApplication(scanBasePackages={"path.to.my.components","path.to.my.othercomponents"})至少就我而言,Intellij不再抱怨。
@SpringBootApplication(scanBasePackages={"com.a.b, com.a.c"})  ,尽管该应用程序运行良好,但intellij不喜欢它。改变@SpringBootApplication(scanBasePackages={"com.a.b", "com.a.c"})为我固定!
                    我正在使用spring-boot 2.0和intellij 2018.1.1 Ultimate Edition,我遇到了同样的问题。
我通过将@EnableAutoConfiguration放在主应用程序类中来解决
@SpringBootApplication
@EnableAutoConfiguration
class App{
/**/
}Redundant declaration: @SpringBootApplication already applies @EnableAutoConfiguration  ¯\ _(ツ)_ / ¯–
                    将@Component或@configuration放入您的Bean配置文件中似乎可以正常工作,例如:
@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");
    }
}如果您不想对代码进行任何更改,只是为了使您的IDE满意即可。我已经通过将所有组件添加到Spring构面中解决了该问题。
我在Spring Boot应用程序中有类似的问题。该应用程序利用Feign(HTTP客户端合成来自带注释的接口的请求)。SomeClient用注释接口后@FeignClient,Feign会生成实现此接口的运行时代理类。当某个Spring组件尝试自动连接type的bean时SomeClient,Idea抱怨没有SomeClient找到类型的bean,因为在项目中实际上不存在任何实际的类,并且Idea并未以@FeignClient任何方式被教导来理解注释。
解决方案:注释界面SomeClient与@Component。(在我们的例子中,我们不直接使用@FeignClient注解SomeClient,而是使用带@OurProjectFeignClient注解的元注解,@FeignClient并且向其添加@Component注解也可以使用。)
@Component到界面可以解决此问题。但是我认为这不是正确的方法……我认为这是IntelliJ IDEA中的一个错误,或者说不太难,IntelliJ IDEA尚未为较新的Feign版本做好准备。它可以@Component在不正确的伪装版本中使用(在其中使用@FeignClient注解org.springframework.cloud.netflix.feign而不是org.springframework.cloud.openfeign-可能是造成此问题的原因?)。您是否找到了其他详细信息(可能是故障单)?
                    @Component)@FeignClient来自org.springframework.cloud.netflix.feign)包。
                    您需要做的就是添加
@ComponentScan("package/include/your/annotation/component")  在中AppConfiguration.java。  
由于我认为您AppConfiguraion.java的软件包比注释组件(@ Service,@ Component ...)的软件包更深,  
如"package/include/your/annotation/component/deeper/config"。
当它出现在IntelliJ v.14中时,我正在使用此注释隐藏此错误:
@SuppressWarnings("SpringJavaAutowiringInspection")@SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection")
                    这似乎仍然是最新IntelliJ中的错误,并且与可能的缓存问题有关?
如果将@Repository批注添加为上述的mk321,请保存,然后删除批注并再次保存,这可以解决此问题。
可以通过在Spring Boot应用程序主类上放置@EnableAutoConfiguration来解决。
有时-在我的情况下-原因是错误的导入。我不小心输入了
import org.jvnet.hk2.annotations.Service代替
import org.springframework.stereotype.Service通过盲目接受Idea的建议进口商品中的第一选择。第一次发生时花了我几分钟:-)
令人惊讶的是,一个成功地与Eclipse一起运行的面向Feign的项目无法在InteliJ中运行。启动应用程序时,InteliJ抱怨我尝试向serviceImpl层注入的Feign客户端说:...中的field personRestClient(我的Feign客户端)需要类型...找不到的bean。考虑在配置中定义类型为'....'的bean。
我浪费了很长时间试图了解问题所在。我找到了一个我不完全理解的解决方案(针对InteliJ):
或选择Eclipse :)
简单,您必须执行2个步骤
==>> change @Autowired to  @ResourceIntelliJ IDEA旗舰版
将您的主类添加到IntelliJ Spring Application Context中,例如Application.java
File -> Project Structure..
左侧:项目设置->模块
右侧:找到您的包装结构
 Spring并添加+ Application.java