项目导出为jar遇到java.io.IOException: Problem reading font data

Maven项目导出为jar后运行测试,发现本地IDE可以运行的项目使用jar无法运行,出现

shell 复制代码
java.io.IOException: Problem reading font data

网上搜索发现问题大都由于找不到对应的资源,经过最终调试问题解决,附代码:

【修改前】
字体存放路径: src/main/resources/fonts/QingNiaoxingshu.ttf

java 复制代码
File fontFile = new File("src/main/resources/fonts/QingNiaoxingshu.ttf");
Font font = Font.createFont(Font.TRUETYPE_FONT, fontFile ).deriveFont(60f);

【修改后】
项目在jar中无法直接访问获取,但可以通过其他方法从jar中获取资源文件,原路径对应jar访问路径:fonts/QingNiaoxingshu.ttf (fonts前不加/)

java 复制代码
InputStream awardFontFile = getClass().getResourceAsStream("fonts/QingNiaoxingshu.ttf");
Font awardFont = Font.createFont(Font.TRUETYPE_FONT, awardFontFile).deriveFont(120f).deriveFont(Font.BOLD);
相关推荐
23.6 小时前
【Java】char字符类型的UTF-16编码解析
java·开发语言·面试
怒放吧德德7 小时前
Spring Boot实战:InfluxDB 2.x简单教程
java·spring boot·后端
indexsunny7 小时前
互联网大厂Java面试实战:核心技术与业务场景深度解析
java·spring boot·hibernate·security·microservices·interview
是小蟹呀^7 小时前
Java中的继承:从入门到精通
java·继承
bearpping7 小时前
怎么下载安装yarn
java
西门吹雪分身7 小时前
JDK8之四大核心函数式接口
java·函数式接口
华科易迅7 小时前
Spring AOP
java·后端·spring
架构师沉默7 小时前
Gemini 正式登陆香港,不用翻墙!
java·后端·架构
zihao_tom7 小时前
Spring WebFlux:响应式编程
java·后端·spring
一只大袋鼠7 小时前
JavaWeb ——Cookie 对象
java·servlet·javaweb·cookie·小蛋糕