當前為10.0版本文檔,更多實例內容將在最新幫助文檔中展現,點選跳轉至 最新版幫助文檔

服務器部署引入 tools.jar

1. 問題現象

服務器部署 FineReport10.0 工程過程中,遇到報錯 500 的情況,如下圖所示:

222


2. 原因分析

在 FineReport V10.0 & FineBI V5.1 中,引入了 Java Agent 和 JVMTI 技術,分别用於 AOP 編程和關鍵類保護以及強制内存回收的實現。

不管是 Java Agent 還是 JVMTI,都是 JVM 的 Agent,區别在於前者是 Java 的實現,後者是 C++ 實現,因此在運行時,除了需要有 JRE 以外,還額外需要 JDK 中的 tools.jar(包含java編譯器、動态加載 Agent 等的工具包)。

tools.jar 是一個平台相關的工具包,不同的平台(Windows、Linux、OS X 等),不同的版本的 JRE,能正常使用的 tools.jar 的版本都是不同的,因此在使用的時候,需要注意匹配。

3. 解決方案

注1:這裏以 Tomcat 爲例進行演示,其他容器同樣爲拷貝到對應的容器的 lib 下。

注2:%JAVA_HOME%/jdk/lib下的tools.jar 爲部署服務器本地 JAVA_HOME裏面的文件,不是開發計算機本地。

%JAVA_HOME%/jdk/lib下的tools.jar拷貝到部署的服務器中,即%TOMCAT_HOME%/lib下和%TOMCAT_HOME%/webapps/工程名/WEB_INF/lib下,如下圖所示:

image.png

4. 注意事項

若環境變量指向的%JRE_HOME%/bin下無 attach.dll 文件,還需将%JAVA_HOME%/jdk/jre/bin下的attach.dll拷貝到此路徑下,如下圖所示:

image.png

附件列表


主題: 原簡體文檔
  • 有幫助
  • 沒幫助
  • 只是瀏覽

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

9s後關閉

反饋已提交

網絡繁忙