具體報錯信息如下
java.io.FileNotFoundException: class path resource [config.json] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/home/java/wcq-new-server/wcq/wcq-admin/target/wcq-admin.jar!/BOOT-INF/classes!/config.json at org.springframework.util.ResourceUtils.getFile(ResourceUtils.java:217) at org.springframework.util.ResourceUtils.getFile(ResourceUtils.java:180) at com.wcgj.wcq.admin.common.ueditor.ConfigManager.initEnv(ConfigManager.java:173) at com.wcgj.wcq.admin.common.ueditor.ConfigManager.<init>(ConfigManager.java:46) at com.wcgj.wcq.admin.common.ueditor.ConfigManager.getInstance(ConfigManager.java:60)
一番搜索后發現問題所在:是用了 ResourceUtils.getFile("classpath:config.json") ,這個方法只能從類路徑下獲取文件,無法從jar包中獲取,所以打成jar包后發布到linuxs系統,就報錯找不到文件了.
解決方案
使用 ClassPathResource classPathResource = new ClassPathResource("config.json"); 來獲取文件,這個方法可以直接從jar包中抓取文件
具體代碼修改如下:

覺得有用點個贊哦
