我正在尝试创建一个HermiT推理机的实例,但是控制台继续显示异常"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);就像控制台说的那样。
我不明白为什么不能创建实例,以及为什么抛出异常。
发布于 2019-02-28 07:59:47
我决定更新到owl-api和hermit的最新版本,这些版本是使用maven中央存储库找到的。
https://stackoverflow.com/questions/54907161
复制相似问题