java - 通过 @Autowired 实例化的 Spring 类 - 引用时生成空指针豁免
问题描述
获得以下课程
@Component
@DependsOn({"classB"}
public class ClassA{
@Autowired ClassB classB;
public ClassA(){
log.info("Instantiating Class A") //
}
executeA(){
classB.executeB(); //null pointer
}
}
@Configuration
@Endpoint
public class EndPointClass {
@Autowired
ClassA classA;
webserviceEndpoint1() {
classA.executeA(); // this line works fine without any errors
}
}
@Service
public class ClassB {
public ClassB() {
log.info("Instantiating Class B") // This line is executed before the Class A
}
public void executeB() {
}
}
当我运行上面的代码时,我可以看到 ClassB 被 spring 实例化,并且在 Class A 被实例化之前,但是一旦它到达 classB.executeB 我得到一个空指针异常。这一切都在 Springboot 中运行。
请问有什么想法吗?
解决方案
推荐阅读
- python - Python返回对应的单元格,时间数据介于2个值之间
- python - Python:我正在处理工资单管理并且遇到 tkinter 问题
- powerbuilder - Powerbuilder:将字符串插入富文本控件
- python - 从 2d numpy 数组(作为 1d numpy 数组的列)和 1d np 标签数组创建 pandas 数据框
- python-3.x - 坏词过滤器也会删除嵌入
- node.js - Discord.js 机器人未在 MessageEmbeds() 中加载图像 url,以前是
- json - 如何在 PureScript 中使用 SimpleJSON 解析行多态记录?
- r - 在条形图中使用因子水平作为标签
- regex - 从文本文件中删除存储在列表中的字符串(支持正则表达式)
- javascript - 如何根据关键字动态拆分数组?