使用springBoot把项目打成jar包,但是读取jar包里的文件时,报了如下错误:
file:/data/service/XXX/launcher.jar.4359!/BOOT-INF/classes!/configs/YYY.txt (No such file or directory),
使用方法是(不打成jar包时此方法可行) :
FileInputStream instream = new FileInputStream(new File(XXX.class.getResource("/").getFile() + ''/configs/YYY.txt"));
很明显文件路径多了!,解决方法如下:
1.InputStream instream = new ClassPathResource("/configs/YYY.txt").getInputStream();
2.InputStream instream = XXX.class.getClassLoader().getResouceAsStream("/configs/YYY.txt");
本文解决SpringBoot项目打成Jar包后,读取内部文件路径错误的问题。介绍了两种有效方法:使用ClassPathResource获取输入流和通过类加载器获取资源流。适用于将项目打包为可执行Jar包场景。

817

被折叠的 条评论
为什么被折叠?



