开始 OWL API
Getting started with OWL API
Post-答案编辑:这是一个主要由于 IDE 问题引起的问题。如果您不熟悉 eclipse 或一般的 java 编程,同时还学习 OWL.
,这可能更有用
总的来说,我对 OWL 很陌生,需要熟悉我正在从事的项目的 OWL API。我的 java 有点生疏,所以也许我的问题就在那里,尽管我不这么认为。
问题:我已经使用 OWL API 好几天了,但我无法找到执行任何操作所需的库的兼容版本。这是我尝试执行的一个非常基本的操作的一些示例代码:
package converter;
import org.semanticweb.owlapi.apibinding.OWLManager;
import org.semanticweb.owlapi.model.OWLOntologyManager;
public class OWL_Converter {
OWLOntologyManager m = OWLManager.createOWLOntologyManager();
}
当我尝试在 eclipse 中构建时,这正好为我抛出了 11,362 个错误。这些错误中的前 50 个左右表示类似 "AbstractAnnotatedAxiomRoundTrippingTestCase cannot be resolved to a type" 的内容。请有人帮我弄清楚我做错了什么。这三天一直在搞OWL和OWLapi,进展很慢,现在就这样碰壁了,好像不管多少OWL api 类 我导入,我仍然有来自 类 的间接引用的未解析类型,等等...
堆栈跟踪显示如下:
Exception in thread "main" java.lang.NoClassDefFoundError: ch/qos/logback/core/joran/spi/JoranException
at org.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:189)
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:112)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:105)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:235)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:208)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:221)
at org.semanticweb.owlapi.OWLAPIServiceLoaderModule.<clinit>(OWLAPIServiceLoaderModule.java:50)
at org.semanticweb.owlapi.apibinding.OWLManager.<clinit>(OWLManager.java:42)
at owl_converter.Converter.main(Converter.java:115)
Caused by: java.lang.ClassNotFoundException: ch.qos.logback.core.joran.spi.JoranException
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 9 more
您正在编译 OWL API 源代码吗?
您可以通过两种方式跳过必须手动填写所有依赖项:
在 Eclipse 中导入现有的 maven 项目(这将使用 pom 文件来确定依赖项)
查看 antbuild 文件夹中的类路径文件并确保您的 .classpath 文件匹配。
您可能需要进行 Maven 测试构建以确保库已下载。
Post-答案编辑:这是一个主要由于 IDE 问题引起的问题。如果您不熟悉 eclipse 或一般的 java 编程,同时还学习 OWL.
,这可能更有用总的来说,我对 OWL 很陌生,需要熟悉我正在从事的项目的 OWL API。我的 java 有点生疏,所以也许我的问题就在那里,尽管我不这么认为。
问题:我已经使用 OWL API 好几天了,但我无法找到执行任何操作所需的库的兼容版本。这是我尝试执行的一个非常基本的操作的一些示例代码:
package converter;
import org.semanticweb.owlapi.apibinding.OWLManager;
import org.semanticweb.owlapi.model.OWLOntologyManager;
public class OWL_Converter {
OWLOntologyManager m = OWLManager.createOWLOntologyManager();
}
当我尝试在 eclipse 中构建时,这正好为我抛出了 11,362 个错误。这些错误中的前 50 个左右表示类似 "AbstractAnnotatedAxiomRoundTrippingTestCase cannot be resolved to a type" 的内容。请有人帮我弄清楚我做错了什么。这三天一直在搞OWL和OWLapi,进展很慢,现在就这样碰壁了,好像不管多少OWL api 类 我导入,我仍然有来自 类 的间接引用的未解析类型,等等...
堆栈跟踪显示如下:
Exception in thread "main" java.lang.NoClassDefFoundError: ch/qos/logback/core/joran/spi/JoranException
at org.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:189)
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:112)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:105)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:235)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:208)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:221)
at org.semanticweb.owlapi.OWLAPIServiceLoaderModule.<clinit>(OWLAPIServiceLoaderModule.java:50)
at org.semanticweb.owlapi.apibinding.OWLManager.<clinit>(OWLManager.java:42)
at owl_converter.Converter.main(Converter.java:115)
Caused by: java.lang.ClassNotFoundException: ch.qos.logback.core.joran.spi.JoranException
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 9 more
您正在编译 OWL API 源代码吗? 您可以通过两种方式跳过必须手动填写所有依赖项:
在 Eclipse 中导入现有的 maven 项目(这将使用 pom 文件来确定依赖项)
查看 antbuild 文件夹中的类路径文件并确保您的 .classpath 文件匹配。
您可能需要进行 Maven 测试构建以确保库已下载。