Quarkus构建后无法找到依赖库字体资源问题求助
解决Quarkus构建后OpenPDF无法找到回退字体的问题
问题原因
Quarkus默认构建流程仅打包项目自身的资源,OpenPDF内置的font-fallback/LiberationSans-Regular.ttf作为依赖库中的资源,未被自动纳入构建,导致运行时找不到该字体。
解决方案
方案1:通过Quarkus配置强制包含依赖资源
在项目的application.properties中添加配置,指定需要包含的资源路径:
# 纳入OpenPDF的回退字体资源 quarkus.resources.includes=font-fallback/*.ttf
该配置会让Quarkus构建工具将所有匹配路径的资源(无论来自项目还是依赖库)打包到最终产物中。
如果是构建原生镜像(Native Image),需补充添加原生镜像专属的资源包含配置:
quarkus.native.resources.includes=font-fallback/*.ttf
方案2:手动复制字体文件到项目资源目录
如果配置方式不生效,可采用兜底方案:
- 从OpenPDF的依赖JAR中提取
font-fallback/LiberationSans-Regular.ttf文件 - 将文件复制到项目的
src/main/resources/font-fallback/目录下 - 重新构建项目,Quarkus会自动打包该资源
推荐优先使用方案1,避免手动维护第三方资源带来的版本不一致问题。
内容的提问来源于stack exchange,提问作者Thessi
相关产品推荐
相关产品推荐

