OWL-API 4.0.1 compatible pellet reasoner?
OWL-API 4.0.1 compatiable pellet reasoner?
我使用的是 OWL-API 版本 4.0.1 和 Pellet reasoner 版本 2.3.6,如下面从 pom 文件中提取的 maven 依赖项部分所示
<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>
编译项目时,发现报错如下:
Exception in thread "main" java.lang.AbstractMethodError at
org.semanticweb.owlapi.OWLAPIServiceLoaderModule.loadFactories(OWLAPIServiceLoaderModule.java:99)
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:230)
at com.google.inject.spi.Elements.getElements(Elements.java:103) at
com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:136)
at
com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
at com.google.inject.Guice.createInjector(Guice.java:96) at
com.google.inject.Guice.createInjector(Guice.java:73) at
com.google.inject.Guice.createInjector(Guice.java:62) at
org.semanticweb.owlapi.apibinding.OWLManager.(OWLManager.java:43)
at
sematicdm.parser.CreateIndividualsClass.main(CreateIndividualsClass.java:73)
在 class createIndividualsClass 中引发错误的行如下:
OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
是兼容性问题吗?如果是这样,我应该在 pom 文件中包含什么版本的颗粒谐振器?
目前还没有与 OWLAPI 4 兼容的 Pellet 版本 - 我计划在本周末发布一个。关注 https://github.com/ignazio1977/pellet 更新。
目前,最新版本的FaCT++ (1.6.3) 和JFact (4.0.0) 兼容OWLAPI 4.0.1。我不知道其他推理机的当前状态 - HermiT 正在计划更新但尚未完成。
Pallet 现在最高支持 OWLAPI 4.0.2 和 Protege 5.0(作为插件)beta 21 及更新版本。
https://github.com/ignazio1977/pellet/commit/5ee814edd52df9aa9366db1fae76f7e9ea9057aa
我使用的是 OWL-API 版本 4.0.1 和 Pellet reasoner 版本 2.3.6,如下面从 pom 文件中提取的 maven 依赖项部分所示
<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>
编译项目时,发现报错如下:
Exception in thread "main" java.lang.AbstractMethodError at org.semanticweb.owlapi.OWLAPIServiceLoaderModule.loadFactories(OWLAPIServiceLoaderModule.java:99) 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:230) at com.google.inject.spi.Elements.getElements(Elements.java:103) at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:136) at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104) at com.google.inject.Guice.createInjector(Guice.java:96) at com.google.inject.Guice.createInjector(Guice.java:73) at com.google.inject.Guice.createInjector(Guice.java:62) at org.semanticweb.owlapi.apibinding.OWLManager.(OWLManager.java:43) at sematicdm.parser.CreateIndividualsClass.main(CreateIndividualsClass.java:73)
在 class createIndividualsClass 中引发错误的行如下:
OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
是兼容性问题吗?如果是这样,我应该在 pom 文件中包含什么版本的颗粒谐振器?
目前还没有与 OWLAPI 4 兼容的 Pellet 版本 - 我计划在本周末发布一个。关注 https://github.com/ignazio1977/pellet 更新。
目前,最新版本的FaCT++ (1.6.3) 和JFact (4.0.0) 兼容OWLAPI 4.0.1。我不知道其他推理机的当前状态 - HermiT 正在计划更新但尚未完成。
Pallet 现在最高支持 OWLAPI 4.0.2 和 Protege 5.0(作为插件)beta 21 及更新版本。
https://github.com/ignazio1977/pellet/commit/5ee814edd52df9aa9366db1fae76f7e9ea9057aa