我们有时候在idea环境下读取工程内文件用className.class.getResourceAsStream() 是可以成功的,
但是打成jar包发布后就读取不到,报错:java.io.FileNotFoundException: file:/app.jar!/BOOT-INF/classes!
所以我们需要改变读取文件的方式,读取jar包内容只能是流的方式。
案例如下:
/*** 读取文件信息
*@paramname 文件路径
*@returnjava.lang.String 返回参数说明
*@exception/throws*/
publicString readFile2Str(String name){
InputStream inputStream= null;
BufferedReader br= null;
StringBuilder sb= newStringBuilder();try{
inputStream= this.getClass().getResourceAsStream("/TASK.md");
br= new BufferedReader(newInputStreamReader(inputStream));
String line;while((line = br.readLine()) != null){
sb.append(line);
}
}catch(IOException e) {
e.printStackTrace();
}finally{if(inputStream != nu