я использовал OWL-API версии 4.0.1 вместе с Pellet Reasoner версии 2.3.6, как можно увидеть в извлеченный из раздела Maven зависимостей POM файла нижеOWL-API 4.0.1 совместимый метод расчета гранул?
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-api</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-apibinding</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>com.github.ansell.pellet</groupId>
<artifactId>pellet-owlapiv3</artifactId>
<version>2.3.6-ansell</version>
</dependency>
Когда я выполнил проект, я нашел ошибка, как показано ниже:
Исключение в потоке "основного" java.lang.AbstractMethodError на org.semanticweb.owlapi.OWLAPIServiceLoaderModule.loadFactories (OWLAPIServiceLoaderModule.java:99) на org.semanticweb.owlapi.OWLAPIServiceLoaderModule. настройка (OWLAPIServiceLoaderMod ule.java:52) at com.google.inject.AbstractModule.configure (AbstractModule.java:62) at com.google.inject.spi.Elements $ RecordingBinder.install (Elements.java:230) at com .google.inject.spi.Elements.getElements (Elements.java:103) в com.google.inject.internal.InjectorShell $ Builder.build (InjectorShell.java:136) at com.google.inject.internal. InternalInjectorCreator.build (InternalInjectorCreator.java:104) на com.google.inject.Guice.createInjector (Guice.java:96) на com.google.inject.Guice.createInjector (Guice.java:73) на com. google.inject.Guice.createInjector (Guice.java:62) в org.semanticweb.owlapi.apibinding.OWLManager. (OWLManager.java:43) на sematicdm.parser.CreateIndividualsClass.main (CreateIndividualsClass.java:73)
В классе createIndividualsClass линия, которая вызывает ошибку ниже:
OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
ли это проблемы совместимости? Если да, то какую версию пеллетного резонатора следует включить в файл pom?
Кажется, это проблема совместимости, поскольку пеллеты не обновлять от совы апи v3. Я не думаю, что вы можете найти Pellet для версии 4. – Artemis