gpt4 book ai didi

java - BIRT 3.7 运行时。不能再自定义 PDF 字体和 jdbc 驱动程序了吗?

转载 作者:搜寻专家 更新时间:2023-10-31 20:22:56 25 4
gpt4 key购买 nike

我正在尝试将 BIRT 升级到最新的运行时 3.7。看来自定义PDF字体是不可能的!在以前的版本中,它是在 org.eclipse.birt.report.engine.fonts*/fontsConfig*.xml 文件中完成的。

在 3.7 中,fontsConfig*.xml 文件嵌入到 BIRT 运行时 jar 文件中(在我的例子中是 org.eclipse.birt.runtime_3.7.1.v20110913-1734.jar). jar 文件已签名,认为它是 OSGI 所必需的。因此,如果您更改 jar 中的任何内容,JRE 会在加载文件时抛出校验和错误。如果您删除签名信息,OSGI 将不会加载它 (NPE)。

有什么想法可以在不重建 BIRT 运行时的情况下自定义我的 pdf 字体吗?

顺便说一句,我怀疑 jdbc 驱动程序也存在同样的问题。上面提到的 jar 文件包含 drivers 文件夹。怀疑它是来自插件 org.eclipse.birt.report.data.oda.jdbc* 的 jdbc 驱动程序的 stub 。

几年前,我问了一个关于从 BIRT 运行时添加 PDF 字体的问题。仍然没有答案BIRT: pdf emitter, load/use fonts from relative path or from jar files

更新:

  1. 关于 pdf 字体,发现 3.7.1 中 Unresolved 开放错误 - https://bugs.eclipse.org/bugs/show_bug.cgi?id=347431
  2. 根据 http://wiki.eclipse.org/Birt_3.7_Migration_Guide#JDBC_Drivers , jdbc 驱动程序必须在类路径中

最佳答案

这不是最简洁的方法,但可以在 jar 文件中编辑它们。您可以通过删除 META-INF/ECLIPSEF.SF 并从 META-INF/MANIFEST.MF 中删除主要部分之后的所有内容(文件名和摘要...或者,仅删除配置文件的部分)来删除签名。不需要对 jar 进行签名(我想这取决于安全管理器的设置,但在默认设置下它运行良好)。

关于java - BIRT 3.7 运行时。不能再自定义 PDF 字体和 jdbc 驱动程序了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7619727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com