GVKun编程网logo

intellij 错误地说没有为自动装配的存储库找到类型的 bean(无法自动装配,未找到bean)

22

在本文中,您将会了解到关于intellij错误地说没有为自动装配的存储库找到类型的bean的新资讯,同时我们还将为您解释无法自动装配,未找到bean的相关在本文中,我们将带你探索intellij错误地

在本文中,您将会了解到关于intellij 错误地说没有为自动装配的存储库找到类型的 bean的新资讯,同时我们还将为您解释无法自动装配,未找到bean的相关在本文中,我们将带你探索intellij 错误地说没有为自动装配的存储库找到类型的 bean的奥秘,分析无法自动装配,未找到bean的特点,并给出一些关于@Aspect方面的Spring自动装配的Bean为空、angularjs – IntelliJ和Angular 2参数类型不可分配的错误、Groovy Spock测试用例无法找到自动装配的bean、IntelliJ IDEA 常见文件类型的图标介绍的实用技巧。

本文目录一览:

intellij 错误地说没有为自动装配的存储库找到类型的 bean(无法自动装配,未找到bean)

intellij 错误地说没有为自动装配的存储库找到类型的 bean(无法自动装配,未找到bean)

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

没有豆子?

在此处输入图像描述

正如您在下面看到的,它通过了测试?所以它必须是Autowired?

在此处输入图像描述

答案1

小编典典

使用他们的注释创建 Spring
Boot应用程序时,我遇到了同样的问题。
@SpringBootApplication此注解表示@Configuration@EnableAutoConfiguration@ComponentScan根据弹簧参考。

正如预期的那样,新注释工作正常,我的应用程序运行顺利,但是 Intellij
一直抱怨未实现的@Autowire依赖项。一旦我改回使用@Configuration,@EnableAutoConfiguration@ComponentScan分开,错误就消失了。似乎
Intellij 14.0.3 (很可能也是早期版本)尚未配置为识别@SpringBootApplication注释。

现在,如果这些错误对您造成如此大的困扰,那么请回到这三个单独的注释。否则,忽略 Intellij …您的依赖解析已正确配置,因为您的测试通过了。

总记得…

人永远大于机器。

@Aspect方面的Spring自动装配的Bean为空

@Aspect方面的Spring自动装配的Bean为空

如何解决@Aspect方面的Spring自动装配的Bean为空?

方面是一个单例对象,在spring容器外部创建。使用XML配置的解决方案是使用Spring的factory方法检索方面。

<bean id="syncLoggingAspect"factory-method="aspectOf" />

使用此配置,该方面将被视为任何其他Spring bean,并且自动装配将正常工作。

你还必须在没有构造函数或在spring容器外部创建的对象的Enum对象和其他对象上也使用工厂方法。

解决方法

我有以下spring配置:

<context:component-scan base-package="uk.co.mysite.googlecontactsync.aop"/>

<bean name="simpleEmailSender"/>

<aop:aspectj-autoproxy/>

然后我有一个方面:

@Aspect
public class SyncLoggingAspect {
    @Autowired
    private SimpleEmailSender simpleEmailSender

    @AfterReturning(value="execution(* uk.co.mysite.datasync.polling.Poller+.doPoll())",returning="pusher")
    public void afterPoll(Pusher pusher) {      
        simpleEmailSender.send(new PusherEmail(pusher));
    }
}

此方面有效(我可以在afterPoll上达到断点),但是simpleEmailSender为null。不幸的是,我找不到清楚的文档说明为什么这样做。(作为记录,我的simpleEmailSender bean存在并且已正确连接到其他类中)以下几点使我感到困惑:

  1. 是context:component-scan应该是@Aspect吗?如果可以肯定的话,那将是一个弹簧管理的bean,那么自动装配应该可以工作吗?
  2. 如果context:component-scan不是用于创建方面,那么如何创建我的方面?我以为aop:aspectj-autoproxy只是创建一个beanPostProcessor来代理我的@Aspect类?如果不是Spring托管的bean,它将如何执行?
    显然,你可以告诉我,我对一切应该如何工作一无所知。

angularjs – IntelliJ和Angular 2参数类型不可分配的错误

angularjs – IntelliJ和Angular 2参数类型不可分配的错误

IntelliJ中的Angular2(v15的最新更新 – 终极版)应该有效吗?所有的文档似乎都说它是通过AngularJS插件完成的,但我得到的是奇怪的智能感知错误.例如;
bootstrap(App,[
    ROUTER_PROVIDERS,provide(LocationStrategy,{useClass: HashLocationStrategy})
]);

引发参数类型App不能分配给参数类型Type

和标准注释一样;

@RouteConfig([
    {path: '/...',component: RootView,as: 'RootView',useAsDefault: true}
])

throw参数类型{path:string,component:RootView,as:string,useAsDefault:boolean} []不能赋值给参数类型RouteDeFinition []

以前有人碰过这个吗?有谁知道如何让smartJ玩得好听?

按要求提供应用程序来源;

import {Component,ViewEncapsulation} from 'angular2/core';
import {RootView} from './root-view';
import {
    RouteConfig,ROUTER_DIRECTIVES
} from 'angular2/router';

@Component({
    selector: 'app',templateUrl: './components/app/app.html',encapsulation: ViewEncapsulation.None,directives: [ROUTER_DIRECTIVES]
})
@RouteConfig([
    {path: '/...',useAsDefault: true}
])
export class App {
}
事实证明,由于我无法解释的原因,需要构造函数或IntelliJ真的很混乱,并且混淆一直沿着依赖链.

在我的实例中,修复很简单,是App中的默认空构造函数:

export class App {
    constructor() {}
}

但是Angular2中使用IntelliJ的一般经验法则似乎是DI链中所有内容的构造函数 – 至少目前是这样.我认为这是一个错误,将在IntelliJ的角度插件中修复 – 我只是将它提交给他们.

Groovy Spock测试用例无法找到自动装配的bean

Groovy Spock测试用例无法找到自动装配的bean

尝试将其添加到您的Class测试中:

@TestConfiguration
   static class ConfigurationClass{
  
        @Bean
        public ServiceX serviceX() {
            return new ServiceX();
        }
    }

IntelliJ IDEA 常见文件类型的图标介绍

IntelliJ IDEA 常见文件类型的图标介绍

在之前的 “ 史上最简单的 IntelliJ IDEA 教程 ” 系列博文中,咱们已经了解了很多关于 IntelliJ IDEA 的内容啦,例如,在 Windows 系统下安装 IntelliJ IDEA、运行 IntelliJ IDEA 、创建 Java 项目以及修改 IntelliJ IDEA 主题等等,可以说,咱们已经初步掌握了 IntelliJ IDEA 的使用方法啦!不过,有一个现象不知道大家注意到没有,那就是:在咱们使用 IntelliJ IDEA 创建文件的时候, 随着文件类型的不同,其显示的图标也不相同。例如,咱们分别创建 Java、Interface、Enum 和 JavaScript 文件,如下图所示:

1

如上图所示,显然不同的文件类型,其显示的图标也不相同。为了能够更好的掌握 IntelliJ IDEA,在这里,咱们更进一步,了解一下 IntelliJ IDEA 各种文件类型的图标,主要分为三类:Common、Data Sources 和 File Types.

Common

2 
3 
4 
5

Data Sources

6 
7 
8

File Types

IntelliJ IDEA 识别众多的文件类型,每一个文件类型都用一个特殊图标表示,也允许自定义的文件类型。每个文件类型与一个或多个特定的模式进行关联扩展。文件类型及其扩展可以在文件类型的对话框中进行配置。默认的文件类型包括:

9 
10 
11 
12 
13 
14 
15 
16 
17

对于各种文件类型的图标,上面的 Description 已经介绍的非常详细啦,但是还有两个图标需要特别的说明一下,分别为:

    • 111Source root,咱们可以理解为源目录,其作用就是用来专门存放 Java 类文件的,相对于编译出来的 class 文件而言,它就是源。一般默认名字叫 src 的目录就是源目录,但是在 IntelliJ IDEA 中,即使叫 srcs 也是可以设置为 Source root 的,所以源目录跟目录命名是没有关系的,因为 IntelliJ IDEA 支持将任意目录设置为 Source root,其作用就是标记该目录下的文件是可编译的。
    • 222Java class located out of the source root,咱们已经知道 Source root 目录是用来告诉 IntelliJ IDEA 这是存放可编译文件的目录,而如果咱们的 Java 类文件没有放在该目录或是该目录的子包下,那么该 Java 类文件就无法进行编译,其前面就会显示这个图标。

我们今天的关于intellij 错误地说没有为自动装配的存储库找到类型的 bean无法自动装配,未找到bean的分享已经告一段落,感谢您的关注,如果您想了解更多关于@Aspect方面的Spring自动装配的Bean为空、angularjs – IntelliJ和Angular 2参数类型不可分配的错误、Groovy Spock测试用例无法找到自动装配的bean、IntelliJ IDEA 常见文件类型的图标介绍的相关信息,请在本站查询。

本文标签: