記錄一下getContextClassLoader().getResource()
之坑FileNotFoundException
。
今早部署代碼到測試環境之后,測試需求的時候出現了FileNotFoundException
,發現是獲取字體路徑的時候報錯了,很奇怪,在本地調試的時候並未發現此問題。
錯誤日志:
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
解決問題。