我收到这个错误:
Exception in thread "main" java.lang.AbstractMethodError
at org.semanticweb.owlapi.OWLAPIServiceLoaderModule.lambda$loadFactories$1(OWLAPIServiceLoaderModule.java:97)
at java.util.ArrayList.forEach(Unknown Source)
at org.semanticweb.owlapi.OWLAPIServiceLoaderModule.loadFactories(OWLAPIServiceLoaderModule.java:95)
at org.semanticweb.owlapi.OWLAPIServiceLoaderModule.configure(OWLAPIServiceLoaderModule.java:52)
at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
at com.google.inject.spi.Elements.getElements(Elements.java:110)
at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
at com.google.inject.Guice.createInjector(Guice.java:99)
at com.google.inject.Guice.createInjector(Guice.java:73)
at com.google.inject.Guice.createInjector(Guice.java:62)
at org.semanticweb.owlapi.apibinding.OWLManager.createInjector(OWLManager.java:104)
at org.semanticweb.owlapi.apibinding.OWLManager.getOWLDataFactory(OWLManager.java:63)
at OntController.<init>(OntController.java:86)
at Driver.main(Driver.java:9)
每当我尝试使用OWLManager时,即df = OWLManager.getOWLDataFactory();
或manager = OWLManager.createOWLOntologyManager();
。
我注意到,自从我通过maven引进佩莱后,这个错误就开始出现了。这是我的pom.xml中的依赖标签:
<dependency>
<groupId>com.github.ansell.pellet</groupId>
<artifactId>pellet-owlapiv3</artifactId>
<version>2.3.3</version>
</dependency>
有没有办法让Pellet和最新版本的OWL API工作?我不知道如何解决这个错误。
您正在使用OWLAPI 5运行Pellet。Pellet没有与owlapi5兼容的版本,您需要使用最新的Openllet版本。