问题:
java本地用idea启动时使用ResourceUtils.getFile方法读取文件没有问题,部署ops时系统提示找不到文件。
解决:
本地启动时:
File file = ResourceUtils.getFile("font/KaiTi.ttf");
可以正常获得,因为直接读取到文件。
服务器运行时:
一般采用jar方式发布,所以系统再采用上面方法时,是无法读取到jar内部的文件,其实他是一个Resource,而不是File,所以需要用下面方法获得
BufferedReader in = new BufferedReader(new InputStreamReader(Application.class
.getClassLoader()
.getResourceAsStream("font/KaiTi.ttf")));
然后再讲BufferReader转为File即可