Springboot项目打包jar之后,读取不到resources下文件

在本地开发环境下能正常读取该文件, 但是在 Linux 环境下将项目打包成jar后无法读取文件

因为在本地开发环境下, config.xml是真实存在于磁盘上的某个目录, 此时通过  new File(文件路径)  是可以正常读取的。 但是在Linux下打包成jar后,

实际上config.xml是存在于jar里面的资源文件, 在磁盘上是没有真实路径存在的, 所以通过文件读取文件读取方式会报  java.io.FileNotFoundException 

解决方法如下:

ClassPathResource resource = new ClassPathResource("config.xml");
//读取xml内容
 InputStream in = resource.getInputStream();
String config = StreamUtils.copyToString(in, StandardCharsets.UTF_8);
in.close();

 

posted @ 2024-01-18 17:31  YF721  阅读(2027)  评论(0)    收藏  举报