springboot打包jar後讀取資源文件

背景

springboot項目下netty應用證書,需要加載證書文件。在idea中正常運行,但是打包成jar包卻報錯,提示找不到文件。說來慚愧,這個問題搞了一上午(雖說有其他問題干擾)但是也覺得尷尬。。。遂記錄之

原因分析

初始使用的是getFile(),由於打包成jar後。這個絕對路徑實際是不存在的。

InputStream is=new FileInputStream( (new ClassPathResource("certs/clientCerts.jks")).getFile() );

解決方案

採用流的方式,使用getInputStream()

InputStream is=new ClassPathResource("certs/clientCerts.jks").getInputStream();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章