我在服务中使用@PostConstruct注释的方法加载资源文件时遇到了困难。
@Service
public class MyService {
@Autowired
ResourceLoader resourceLoader;
//@Autowired
//private ApplicationContext applicationContext;
@PostConstruct
public void initialize() {
Resource res = resourceLoader.getResource("classpath*:myResource.csv");
//Resource res = applicationContext.getResource("classpath*:myResource.csv");
... use loaded resource ...
}
}
我一直收到错误IllegalStateException: The resources may not be accessed if they are not currently started
。
我哪里错了?这可能是bean初始化的顺序吗?
答案 0 :(得分:0)
如果您只加载单个资源,则从类路径中删除星号(*)并确保该文件位于src / main / resources
我的直觉是这是一个类路径问题,而且有些东西不匹配。如果您仍遇到问题,请上传说明此问题的示例项目。