Spring @Autowired 对象为空
Spring @Autowired object is null
我正在 spock 框架中编写规范 class。
@ContextConfiguration(classes = [MyServiceImplementation.class])
class MyServiceSpecification extends Specification {
@Autowired
private MyService myServiceImplementation
def " " {
//code
}
}
注解classMyServiceImplementation
@Service
。我没有使用 XML 配置。 MyServiceImpl
是接口的实现:MyService
.
为什么自动装配对象 myServiceImplementation
为空?
我试过 ComponentScan
还是不行。
首先,您需要在类路径中同时包含 spock-core
和 spock-spring
。其次,@ContextConfiguration(classes=
获取配置列表 类,而不是 bean 类。
@ContextConfiguration(classes = [MyConfig.class])
class MyServiceSpecification extends Specification {
@Autowired
private MyService myServiceImplementation
def " " {
//code
}
}
// You could also define @ComponentScan here
class MyConfig {
@Bean
MyService myService() {
return new MyServiceImplementation();
}
}
我正在 spock 框架中编写规范 class。
@ContextConfiguration(classes = [MyServiceImplementation.class])
class MyServiceSpecification extends Specification {
@Autowired
private MyService myServiceImplementation
def " " {
//code
}
}
注解classMyServiceImplementation
@Service
。我没有使用 XML 配置。 MyServiceImpl
是接口的实现:MyService
.
为什么自动装配对象 myServiceImplementation
为空?
我试过 ComponentScan
还是不行。
首先,您需要在类路径中同时包含 spock-core
和 spock-spring
。其次,@ContextConfiguration(classes=
获取配置列表 类,而不是 bean 类。
@ContextConfiguration(classes = [MyConfig.class])
class MyServiceSpecification extends Specification {
@Autowired
private MyService myServiceImplementation
def " " {
//code
}
}
// You could also define @ComponentScan here
class MyConfig {
@Bean
MyService myService() {
return new MyServiceImplementation();
}
}