3

问题解决系列:cannot be resolved to absolute file path because it does not resid...

 1 year ago
source link: https://blog.51cto.com/fengyege/5936665
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

问题解决系列:cannot be resolved to absolute file path because it does not reside in the file system_ jar

精选 原创

springboot打包之后,读取资源文件内容,报错,报错提示如下:

cannot be resolved to absolute file path because it does not reside in the file system: jar

springboot

2.1.1.RELEASE

打包之后,spring没办法通过File的形式访问jar包里面的文件。

有两种方案:

1. 使用resource.getInputStream()读取文件内容

2. 缓存到临时文件,使用临时文件路径进行读取

样例代码如下:

String tempPath = System.getProperty("java.io.tmpdir")+"tomcat_"+System.currentTimeMillis();
String tempFile = tempPath+File.separator+fileName;
Resource resource = new DefaultResourceLoader().getResource("classpath:META-INF/resources"+filePath);
if (resource == null) {
return "";
}

File file = new File(tempPath);
if (!file.exists()) {
file.mkdir();
}
IOUtil.cp(resource.getInputStream(),new FileOutputStream(new File(tempFile)));

顺利解决问题!!!

学无止境!

如果我的文章对大家产生了帮忙,可以在文章底部点个赞或者收藏;

如果有好的讨论,可以留言;

如果想继续查看我以后的文章,可以点击关注

可以扫描以下二维码,关注我的公众号:枫夜之求索阁,查看我最新的分享!

问题解决系列:cannot be resolved to absolute file path because it does not reside in the file system_ jar_System
问题解决系列:cannot be resolved to absolute file path because it does not reside in the file system_ jar_tomcat_02
  • 收藏
  • 评论
  • 分享
  • 举报

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK