1、问题现象:项目打成jar包后,使用ResourceUtils.getFile(keystoreFile)无法访问到资源文件

//classpath为resources目录下
String testFile = "classpath:test.txt";
FileInputStream in = new FileInputStream(ResourceUtils.getFile(testFile));

2、问题分析:项目构建成jar包后,resources目录中的文件并不是直接存在系统中,而是嵌套在jar文件中。

3、解决方法:首先使用resource.getInputStream()获取到该文件的InputStream,然后使用FileUtilscopyToFile()方法将流拷贝到目标文件中


//要导入的包
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.apache.commons.io.FileUtils;
import java.security.KeyStore;
//测试文件
String testFile = "classpath:test.txt";
//获取test.txt,filePath为文件的绝对路径
String filePath = "D:\\Project\\y_project-RuoYi-master\\RuoYi\\ruoyi-admin\\src\\main\\resources\\test.txt";
//获取资源文件
Resource resource = new ClassPathResource(testFile);
File clientFile = new File(filePath);
FileUtils.copyToFile(resource.getInputStream(), clientFile);
//文件流读取
FileInputStream fileInputStream = new FileInputStream(clientFile);

参考链接:class path resource cannot be resolved to absolute file path

使用FileInputStream读取jar包中的资源文件相关推荐

  1. java从jar包中拷贝资源文件到临时文件夹

    具体方法: /*** 拷贝资源问件** @param path*/public static void extract(String path) {try {//创建临时文件夹File tempDir ...

  2. java原生和SpringBoot读取jar包中MANIFEST.MF的方式

    我们经常看到java的一些jar包META-INF目录下包含一个MANIFEST.MF文件,里面包含一些版本信息,标题,实现组织,很多第三方的jar包还会自定义一个属性. 本文讲解如何读取jar包中M ...

  3. 解决springboot读取jar包中文件的问题

    解决springboot读取jar包中文件的问题 参考文章: (1)解决springboot读取jar包中文件的问题 (2)https://www.cnblogs.com/songxiaotong/p ...

  4. 打包部署后无法读取jar包里的文件(实测可行,Java中读取jar包中的文件)

    打包部署后无法读取jar包里的文件 Java中读取jar包中的文件 linux中无法读取jar包中的内容(windows可以的!),如何解决 一.背景 项目中免不了需要读取文件,如果文件用绝对路径读取 ...

  5. 获取jar包内部的资源文件

    通常获取一个资源文件很简单,问题是对于jar包内的资源文件,可能会发生意外.假如这里有一个文件操作的类: public class FileLoader {public boolean exists( ...

  6. 删除jar包中的指定文件

    如何删除jar包中的指定文件呢? 当然使用解压缩软件(rar,zip,7z)肯定没问题.但是我想自动化,图形界面的工具就无能为力了. 核心方法: Java代码   /*** * 删除jar包中的内容 ...

  7. java 读取jar包中的文件

    文章目录 项目resource中文件路径和jar包中文件路径的区别 正常读取 jar包读取 完整代码: 项目resource中文件路径和jar包中文件路径的区别 打成jar包后,是一个整体的文件. 正 ...

  8. Java如何读取JAR包外的properties文件及打成jar包后无法读取到jar包内的properties文件

    项目中,经常把一部分功能独立出来,做一个java  project,然后打成jar包供其他项目引用.这时候,如果jar包中需要读取配置文件信息,则很少把该配置打进jar包,因为它不方便修改,更多都是采 ...

  9. 如何读取jar包外的properties文件和log4j.properties

    2019独角兽企业重金招聘Python工程师标准>>> 时间有限,不做排版和具体讲述问题产生的过程,下面是我的解决方案,已证实有效,其中Log4jP = "log4j.pr ...

最新文章

  1. linux驱动模块makefile,linux驱动makefile求解
  2. 江苏理工学院计算学院实验教学管理系统[.NET项目]
  3. linux进程查看所有线程,Linux中查看进程的多线程的方法
  4. J .U.C 中的原子操作类
  5. 局域网聊天9月局域网聊天
  6. 消息称苹果正在启动生产iPhone SE 3
  7. linux内核文件cache机制,Linux内核文件Cache机制
  8. 阿凡达时隔十年重映,王者归来还是炒冷饭?Python爬取上千条评论并分析
  9. Django SimpleCMDB API
  10. CentOS 迁移SVN以及可视化管理工具iF.SVNAdmin
  11. 提现微信和提现到支付宝
  12. 注册测绘师-大地测量与平差-衡量精度的标准
  13. PHP手册 2009国庆版
  14. 关于友情的励志故事------火炉的故事
  15. 记账软件,预设收支类别、收支账户进行记账的方法
  16. 小米前端实习电话面试一面
  17. 【大数据之Linux】
  18. 通过百度语音api实现语音控制五子棋——基于flask
  19. 【周志华机器学习】三、线性模型
  20. SQL Server2000配远程连接配置

热门文章

  1. 回溯法解决tsp问题 matlab,回溯法求解tsp问题
  2. 如何判断直线之间和直线与平面之间的关系
  3. 基于jsp+ssm的办公用品领用管理系统
  4. js,数组合并的方法+数组添加元素的方法
  5. PLC对模拟量信号是如何转换的?
  6. java中实现ftp.pdf
  7. Qt Safe Renderer 1.2 版发布
  8. 防抖和节流——lodash插件
  9. Java学习教程!java培训北京多少钱
  10. 中国式教育-虎妈猫爸给我的启发