【问题标题】:Write ODF Spreadsheet documents with ODFDOM Java API使用 ODFDOM Java API 编写 ODF 电子表格文档
【发布时间】:2021-04-16 02:19:27
【问题描述】:

我想用模块将旧程序从 Java 8 更新到 Java 15,因此我重写和更新了很多代码。在更新库以编写电子表格文档之前一切正常。

在旧版本中,我使用 org.odftoolkitsimple-api 和 maven。

<dependency>
    <groupId>org.odftoolkit</groupId>
    <artifactId>odfdom-java</artifactId>
    <version>0.8.7</version>
</dependency>
<dependency>
    <groupId>org.odftoolkit</groupId>
    <artifactId>simple-java</artifactId>
    <version>0.4</version>
</dependency>

here 所述,此 API 已被弃用,我想转而使用当前的 ODFDOM API。但是文档不是最新版本的,我没有找到 java 模块的示例。

我添加了 maven 依赖项,但问题是如何将其添加到 module-info.java 文件中。我所有的尝试

requires org.odftoolkit.odfdom.doc.table;

或同等的人惨遭失败。

我的问题可能很简单,但对我来说,它是一座大山。这样做的正确方法是什么?感谢您的任何意见。

【问题讨论】:

  • 编辑:我已经从指令中删除了 requires 之一,考虑到这只是发布此问题时的拼写错误。

标签: java spreadsheet java-module java-platform-module-system odf


【解决方案1】:

导出模块名称

jar --file=/path/to/your/jar/odfdom-java-0.8.7.jar --describe-module

添加依赖指令

在您的情况下,如果这些依赖项尚未模块化或声明它们的Automatic-Module-Name。您仍然可以使用模块指令中的派生名称来使用模块包中的公共类。

requires odfdom.java;
requires simple.java;

作为模块声明指南的specification

requires {RequiresModifier} ModuleName ;

RequiresModifier:
(one of)
transitive static

您需要指定模块名称,而不是您的代码所依赖的包。

此外,经过一些研究,我可以发现,您可能想要测试工具包的 BETA 或 RC 版本,如 repository tags 和 maven central 中所列。

【讨论】:

  • 非常感谢您的回答。我这周难得有时间(下雪了),周末去看看。同样,我需要看看我是否没有在旧版本中使用本地 jar 和 maven。到目前为止已经过去了很多时间......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-17
  • 1970-01-01
  • 2022-11-28
  • 2021-12-31
相关资源
最近更新 更多