我可以在 IDEA 中很好地运行我的 springboot 项目,但是当将它打包到一个 jar 并使用 java 命令运行时,从 spring 上下文获取 bean 时只得到 java.lang.NullPointerException。
刚刚出现错误的第一堂课:
@Service
public class MdspiImpl extends CThostFtdcMdSpi {
public MdspiImpl(CThostFtdcMdApi mdapi) {
m_mdapi = mdapi;
logger.info("MdspiImpl is creating...");
***mdr = SpringContextUtil.getBean("marketDataRobot");//this is the error code***
}
}
第二类:
@Service
public class MarketDataRobot {
}
SpringContextUtil 类:
@Component("SpringContextUtil")
public class SpringContextUtil implements ApplicationContextAware {
private static ApplicationContext applicationContext;
public static <T> T getBean(String name) {
return (T) applicationContext.getBean(name);
}
}
渐变文件:
jar {
baseName = 'programmingTrading'
version = '0.1.0'
manifest {
attributes 'Main-Class': 'com.blackHole.programmingTrading'
}
}
这是使用 SpringContextUtil 获取 bean 的部分原因......非常感谢!
慕娘9325324
慕森王
相关分类