spring-boot - 为什么我无法从 Spring-boot 的应用程序资源目录中读取文件?
问题描述
似乎无论我做什么,我都无法从 Spring-boot 应用程序的资源目录中读取文件。
有任何想法吗?
可能是因为我调用方法来读取文件的方式吗?
@SpringBootApplication
public class DemostoreApplication {
public static void main(String[] args) throws IOException {
SpringApplication.run(DemostoreApplication.class, args);
}
@EventListener(classes = ApplicationStartedEvent.class)
public void applicationStarted() {
loadAFile();
}
void loadAFile(){
InputStream inputStream = getClass().getResourceAsStream("user-data.txt");
}
}
我可以看到有很多这样的问题,大多没有答案。我已经尝试了所有这些命题。
解决方案
是的,我去回答。
/
应该添加一个,表示相对于项目的根!
否则,将在相对于类包的目录中查找该文件。愚蠢的我。
这是有效的:
InputStream is = getClass().getResourceAsStream("/user-data.txt");
推荐阅读
- ruby-on-rails - Travis CI 笑话:未找到
- c# - RijndaelManaged false 解密结果
- amazon-web-services - 为什么(许多)IAM 永久身份比根身份更安全?
- c# - VSTO Ribbon - 通用/抽象按钮单击事件?
- python - tensorflow 上分布式 word2vec 中大量浪费 RecvTensor 操作
- google-apps-script - 在 Gmail 插件中获取 id 令牌以进行后端服务身份验证
- android - IONIC 3 - platform.ready() 触发缓慢
- php - 在 Codeigniter 中实现 Select Count 并回显结果
- spotfire - 如何在 Spotfire 中实现双因素身份验证
- c++ - how to create a forward declaration of a typedef struct