项目导出为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);
相关推荐
老华带你飞5 分钟前
智能菜谱推荐|基于java + vue智能菜谱推荐系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
小钟不想敲代码22 分钟前
Python(三)
java·python·servlet
Qiu的博客24 分钟前
Spring Boot 全局异常处理策略设计(一):异常不只是 try-catch
java·spring
Han.miracle29 分钟前
Java集合核心:ArrayList与LinkedList深度解析
java·开发语言
篱笆院的狗30 分钟前
Group by很慢,如何定位?如何优化?
java·数据库
期待のcode1 小时前
Java的反射
java·开发语言
2201_757830871 小时前
AOP入门程序
java·开发语言
雨中飘荡的记忆1 小时前
MyBatis反射模块详解
java·mybatis
宸津-代码粉碎机1 小时前
Spring 6.0+Boot 3.0实战避坑全指南:5大类高频问题与解决方案(附代码示例)
java·数据仓库·hive·hadoop·python·技术文档编写