记录一下getContextClassLoader().getResource()之坑FileNotFoundException

今早部署代码到测试环境之后,测试需求的时候出现了FileNotFoundException,发现是获取字体路径的时候报错了,很奇怪,在本地调试的时候并未发现此问题。
错误日志:

1
Caused by: java.io.FileNotFoundException: /opt/supplier_web/supplier_web.jar!/BOOT-INF/lib/supplier_web.web-0.0.1.jar!/font/simsun.ttf (No such file or directory)


问题代码如下:

排查发现问题如下:

这是因为打包后Spring试图访问文件系统路径,但无法访问JAR中的路径。

解决办法:

使用ClassPathResource解决问题。


评论