项目导出为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);
相关推荐
C语言小火车7 小时前
C++ 为什么越来越依赖标准库?
java·开发语言·c++
西索斯coding8 小时前
在 中接入 教程:p配置、m填写、扩展思考参数一篇就够(2)
java·前端·javascript·ai
隐退山林8 小时前
JWT令牌技术
java·开发语言·java-ee
w_zero_one8 小时前
动态规划(三)
java·算法·动态规划
木棉软糖8 小时前
JDBC 读 ResultSet 读到一半,报 stream closed
java·mysql·spring
狂奔的sherry8 小时前
JRuby 多线程反引号偶发 127:GC 提前释放了 posix_spawn 的 argv
java·linux·ruby·gc·jruby
咖啡八杯8 小时前
异常体系设计:三类策略(i18n code、message、受检异常)
java·架构·代码规范
Spatial3Ddddd9 小时前
2026空间三维重建服务商横向对比
java·服务器·人工智能
Rain的Java大神之路9 小时前
Java 三层架构,90% 的人只答对一半:Controller 不是瘦,Service 不是透传,Dao 不是只写 SQL
java·后端·面试
Thomas.Sir9 小时前
第29课:微服务异步调用、线程池优化 & 事件驱动开发
java·redis·微服务