linux服務器openjdk11環境easypoi導出excel報錯(class sun.font.CompositeFont cannot be cast to class sun.font.PhysicalFont)


1. 問題說明

1) easypoi 導出excel

2) 具體使方法:

cn.afterturn.easypoi.excel.ExcelExportUtil#exportExcel(cn.afterturn.easypoi.excel.entity.ExportParams, java.lang.Class<?>, java.util.Collection<?>)導出excel報錯

3) 環境:centOS7 openjdk 11.0.5

4) 報錯日志

Caused by: java.lang.ClassCastException: class sun.font.CompositeFont cannot be cast to class sun.font.PhysicalFont (sun.font.CompositeFont and sun.font.PhysicalFont are in module java.desktop of loader 'bootstrap')

2. 解決方案

2.1   配置yum源

https://xiaojin21cen.blog.csdn.net/article/details/84726193?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2.no_search_link

2.2   安裝字體

1 )yum install fontconfig

2)fc-list

查看所有字體文件及其位置

 

2.3   openjdk添加字體

1) cd openjdk安裝目錄/jre/lib

2) mkdir fonts

3) cp -r /usr/share/fonts/dejavu/. openjdk安裝目錄/jre/lib/fonts/

 

4) cd openjdk安裝目錄/lib

5) mkdir fonts

6) cp -r /usr/share/fonts/dejavu/. openjdk安裝目錄/lib/fonts/

 

2.4 重啟服務


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM