java - 创建 HermiT 实例时出现 NoSuchMethodError

标签 java nosuchmethoderror owl-api hermit

我正在尝试创建 HermiT Reasoner 的实例,但控制台继续显示异常“noSuchMethodError”。

特别是这是来自 java 控制台的错误:

Caused by: java.lang.NoSuchMethodError: org.semanticweb.owlapi.model.OWLOntologyID.getDefaultDocumentIRI()Ljava/util/Optional;
at org.semanticweb.HermiT.structural.OWLClausification.preprocessAndClausify(OWLClausification.java:77)
at org.semanticweb.HermiT.Reasoner.loadOntology(Reasoner.java:214)
at org.semanticweb.HermiT.Reasoner.<init>(Reasoner.java:205)
at org.semanticweb.HermiT.Reasoner.<init>(Reasoner.java:179)
at org.semanticweb.HermiT.ReasonerFactory.createHermiTOWLReasoner(ReasonerFactory.java:51)
at org.semanticweb.HermiT.ReasonerFactory.createReasoner(ReasonerFactory.java:19)
at org.semanticweb.HermiT.ReasonerFactory.createReasoner(ReasonerFactory.java:15)
at org.processmining.plugins.myminer.knowledge.OWLOntologia.retrieve_property_class(OWLOntologia.java:76)
at org.processmining.plugins.myminer.knowledge.OntologyVisualizer.visualize(OntologyVisualizer.java:39)
... 13 more

我已经导入了 HermiT(版本 1.4.3.517)所需的所有依赖项,这就是创建 ReasonerFactory 的行:

OWLReasonerFactory reasonerFactory = new ReasonerFactory();

错误的行是:

OWLReasoner hermit = reasonerFactory.createReasoner(ontology);

正如控制台所说。

不明白为什么实例无法创建,为什么抛出异常。

最佳答案

我解决了更新到 owl-api 和 Hermit 最新版本的问题,使用 Maven 中央存储库找到了版本。

关于java - 创建 HermiT 实例时出现 NoSuchMethodError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54907161/

相关文章:

jena - 将 OWLAPI 中的本体与相同的 IRI 合并

java - REST 和复杂的搜索查询

java - Spring Data Rest 的异常

java - OWLAPI : modify ontology after creating (HermiT) reasoner

java - OWL API 从多行注释中删除空行

java - Selenium 在 Java Web 项目上运行时抛出 "NoSuchMethodError"

java - 同一父类(super class)的子类之间的聚合、关联、组合

java - Solr通过自定义函数查询排序

android - 标准 Android 运行时对象上的 NoMethodError

java - 不幸的 Java 异常 : java. lang.NoSuchMethodError