回答後編輯:這是一個主要由於IDE問題而引起的問題。如果你不熟悉eclipse或java編程,同時也學習OWL,這更有用。OWL API入門
我對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這會因我到底11362錯誤。前50個這樣的錯誤說「AbstractAnnotatedAxiomRoundTrippingTestCase無法解析爲類型」。請有人幫我弄清楚我做錯了什麼。在過去的三天裏,我一直在用OWL和OWL API進行非常緩慢的進步,現在我碰壁了,看起來無論我導入多少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
你究竟在做什麼?過去3年來我一直在使用OWL api,並認爲它有最好的入門指南。另外,你寫的代碼完全沒問題。請添加堆棧跟蹤,以便我們可以看到什麼是錯誤的。 – Artemis
@Artemis,感謝您的回覆。很高興聽到有人對貓頭鷹進行了更順利的流程 - 這讓我希望我也可以。對於我自己,除了我看到的這些bizzare錯誤之外,我也遇到了有關文檔的問題。在我篩選出的每個示例中,似乎至少有一個函數自創建以來已被棄用,然後我似乎無法找到有關它被替換的信息。當我剛剛開始時,它變得有點過分了:/另外,編輯原始帖子以包含堆棧跟蹤。謝謝! – Dude
您需要添加apache記錄器才能正常工作。您缺少slf4j日誌api。添加它,然後重新發佈下一個問題。通常這行代碼是完全正確的。 – Artemis