SpringBoot在Windows和Linux环境下文件读取方式不兼容的问题
发布时间
阅读量:
阅读量
问题简述
在完成前几天云计算课程的大作业后端开发过程中,采用了 SpringBoot 框架进行系统搭建,其中涉及从 resources 目录中加载 .json 文件的操作。然而,在本地运行时程序表现正常,但在将项目打包为 jar 文件并上传至服务器执行时,却出现了 文件无法定位 的异常提示。
本地操作系统为 Windows 10
服务器操作系统为 CentOS 7
问题分析
首先,我们来探讨一下常见的用于访问 resources 目录内文件的途径。
1. 寻常读取文件方法
仅限于在 IDE 环境下执行,一旦封装为 jar 包形式进行运行,便会触发错误信息
File file = new File("src/main/resources/static/graphx.json");
2. ResourceUtil
在 Linux 操作系统环境下,该功能无法被正常调用
File file = ResourceUtils.getFile("classpath:static/graphx.json");
3. ClassPathResource
该技术方案具备广泛适用性,无论是在Linux系统还是Windows系统中均可实现正常读取
全部评论 (0)
还没有任何评论哟~
