2012-10-19 20 views
0

我想使用Jena Pellet API作爲Reasoner推斷貓頭鷹文件中的新數據。我已經下載了jar文件pellet.jar,我將它附加到我的Eclipse Java項目中。不過,在運行我的projet時,我仍然收到此錯誤消息。使用Pellet API加載本體時遇到麻煩

有人可以知道我在這裏錯過了什麼嗎?

這裏是我的代碼

public class Mainprogram { 

    public static String FILENAME = "file:./sample.owl"; 

    public static void main(String[] args) { 
     new Mainprogram().run(); 
    } 

    protected OntModel getSoctraceOntology(){ 

     OntModel model = ModelFactory.createOntologyModel(PelletReasonerFactory.THE_SPEC); 

     model.read(FILENAME, null, "RDF/XML");   

     // validation report 
     ValidityReport report = model.validate(); 

     printIterator(report.getReports(), "Validation Rresults");   

     return model; 

    }  
} 

,這裏是錯誤消息

Exception in thread "main" java.lang.NoClassDefFoundError: com/clarkparsia/pellet/rules/ContinuousRulesStrategy 
at org.mindswap.pellet.jena.OWLReasoner.<init>(OWLReasoner.java:90) 
at org.mindswap.pellet.jena.PelletInfGraph.<init>(PelletInfGraph.java:146) 
at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:78) 
at com.hp.hpl.jena.ontology.impl.OntModelImpl.generateGraph(OntModelImpl.java:2744) 
at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:139) 
at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:128) 
at com.hp.hpl.jena.rdf.model.ModelFactory.createOntologyModel(ModelFactory.java:410) 
at soctrace.Mainprogram.getSoctraceOntology(Mainprogram.java:72) 
at soctrace.Mainprogram.run(Mainprogram.java:39) 
at soctrace.Mainprogram.main(Mainprogram.java:34) 
Caused by: java.lang.ClassNotFoundException: com.clarkparsia.pellet.rules.ContinuousRulesStrategy 
at java.net.URLClassLoader$1.run(URLClassLoader.java:217) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:205) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:321) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:266) 
... 10 more 

感謝您的任何幫助。

我使用pellet-1.3.zip文件從mindswap.org下載和pellet.core.jar文件從java2s.com

回答

2

下載您能否提供更多細節?

什麼是您正在使用的Pellet版本?你是否檢查過作爲粒子源代碼分發一部分給出的例子?耶拿也有一些例子。

除此之外,ContinuousRulesStrategy是com.clarkparsia.pellet.rules包的一部分。請檢查是否連接了所有必需的罐子。

+0

我已經提出了更多的細節問題。 –

+2

Pellet最新版本是pellet-2.3.0.zip(2011年8月22日)以及用於下載源代碼的URL - [link](http://clarkparsia.com/pellet)。我想你可以使用最新版本,除非有理由。 – Swamy

+0

非常感謝你,現在工作得很好! –