1. 概述
1.1 版本
報表伺服器版本 |
---|
11.0 |
1.2 問題描述
FineReport 使用匯出、排程管理、設計器內圖表展示功能時。若報表部署在 Linux 環境下,且 JDK 版本在 1.8 以下,則需要載入 J2V8 的 libj2v8_linux_x86_64.so,依賴相應版本的 GCC ,如果 GCC 版本過低,則會存在以下問題:
1)匯出圖表空白,且範本有報錯資訊:
"C library and JDK version do not meet the requirements, Please upgrade GBLIC to 2.17 And GLIBCXX to 3.4.19 or JDK to 1.8"
2)排程管理時,匯出圖表空白,系統訊息提示運作失敗,日誌中報錯:
"C library and JDK version do not meet the requirements, Please upgrade GBLIC to 2.17 And GLIBCXX to 3.4.19 or JDK to 1.8"
那麼如何實現在 JDK1.8 以下且不含有 J2V8 的環境中可以正常使用圖表匯出和排程管理功能呢?
注:即使使用者 JDK 版本在 1.8 以上, 也建議使用者優先考慮升級 GCC 環境方案。升級後匯出效能會得到提升。
1.3 解決思路
升級 Linux 系統中的 GCC 版本,在圖表轉列時使用 J2V8 作為 JS 運作環境。
2. 操作步驟
2.1 判斷是否需要升級
在升級前需要先確認當前系統中的 GCC 版本,使用如下命令,分別查看系統是否存在GLIBC_2.17和GLIBCXX_3.4.22 。
查看系統是否存在GLIBC_2.17:
查看系統是否存在GLIBCXX_3.4.22:
若查看系統沒有對應 GCC 版本,則可按需考慮是否升級。
2.2 升級步驟
點選下載升級工具:升级工具.zip,解壓升級工具,copy至非 usr 的任意目錄下,cd 進入該目錄,執行如下命令:
此處chmod為腳本增加執行權限,./為執行獲取的腳本。
執行命令後,系統即自動升級 GCC 的版本。
注:升級後需重啟 Tomact 。
3. 升級風險
1)GLIBC
GLIBC 是 C 運作庫,是 Linux 系統中最底層的 API ( 包括 Linux 的各種命令都依賴於此庫 ),如果系統內有其他重要項目,請謹慎升級。( 對應的升級檔案為 glibc_2.18.sh )
2)GLIBCXX
GLIBCXX 是 C++ 運作庫,升級一般不會產生太大的影響,並且如果升級之後出現了問題,可以對版本進行回退。( 對應的升級檔案為 glibcxx_3.4.22.sh )