Fehler beim Ausführen der OWL-API bekommen
Ich versuche folgenden Code auszuführen.
import java.io.File;
import org.semanticweb.owlapi.apibinding.OWLManager;
import org.semanticweb.owlapi.model.AddAxiom;
import org.semanticweb.owlapi.model.IRI;
import org.semanticweb.owlapi.model.OWLAxiom;
import org.semanticweb.owlapi.model.OWLClass;
import org.semanticweb.owlapi.model.OWLDataFactory;
import org.semanticweb.owlapi.model.OWLOntology;
import org.semanticweb.owlapi.model.OWLOntologyCreationException;
import org.semanticweb.owlapi.model.OWLOntologyManager;
public class Snippet {
public static void main(String[] args) throws OWLOntologyCreationException {
File file = new File(
"file:///c/Users/DTN/Desktop/Final SubmissionFilteringMechanism_Ontology.owl");
OWLOntologyManager m = OWLManager.createOWLOntologyManager();
OWLDataFactory f = OWLManager.getOWLDataFactory();
OWLOntology o;
o = m.loadOntologyFromOntologyDocument(file);
OWLClass clsA = f.getOWLClass(IRI.create("urn:test#ClassA"));
OWLClass clsB = f.getOWLClass(IRI.create("urn:test#ClassB"));
OWLAxiom ax1 = f.getOWLSubClassOfAxiom(clsA, clsB);
AddAxiom addAxiom1 = new AddAxiom(o, ax1);
m.applyChange(addAxiom1);
for (OWLClass cls : o.getClassesInSignature()) {
System.out.println(cls.getIRI());
}
m.removeOntology(o);
}
}
Es wird folgender Fehler generiert.
Ausnahme im Thread "main" java.lang.NoClassDefFoundError: com / google / inject / Provider bei java.lang.ClassLoader.defineClass1 (native Methode) bei java.lang.ClassLoader.defineClass (unbekannte Quelle) bei java.security.SecureClassLoader .defineClass (unbekannte Quelle) bei java.net.URLClassLoader.defineClass (unbekannte Quelle) bei java.net.URLClassLoader.access $ 100 (unbekannte Quelle) bei java.net.URLClassLoader $ 1.run (unbekannte Quelle) bei java.net.URLClassLoader $ 1.run (unbekannte Quelle) bei java.security.AccessController.doPrivileged (native Methode) bei java.net.URLClassLoader.findClass (unbekannte Quelle) bei java.lang.ClassLoader.loadClass (unbekannte Quelle) bei sun.misc.Launcher $ AppClassLoader.loadClass (unbekannte Quelle) bei java.lang.ClassLoader.loadClass (unbekannte Quelle) bei java.lang.ClassLoader.defineClass1 (native Methode) bei java.lang.ClassLoader.defineClass (unbekannte Quelle) bei java.security.SecureClassLoader. defineClass (unbekannte Quelle) bei java.net.URLClassLoader.defineClass (unbekannte Quelle) bei java.net.URLClassLoader.access $ 100 (unbekannte Quelle) bei java.net.URLClassLoader $ 1.run (unbekannte Quelle) bei java.net.URLClassLoader $ 1.run (unbekannte Quelle) bei java.security.AccessController.doPrivileged (native Methode) bei java.net.URLClassLoader. findClass (Unknown Source) bei java.lang.ClassLoader.loadClass (Unknown Source) bei sun.misc.Launcher $ AppClassLoader.loadClass (Unknown Source) bei java.lang.ClassLoader.loadClass (Unknown Source) bei test.main (test. java: 18) Auslöser: java.lang.ClassNotFoundException: com.google.inject.Provider bei java.net.URLClassLoader.findClass (unbekannte Quelle) bei java.lang.ClassLoader.loadClass (unbekannte Quelle) bei sun.misc.Launcher $ AppClassLoader.loadClass (Unknown Source) bei java.lang.ClassLoader.loadClass (Unknown Source) ... 25 weitere
Bitte helfen mir einige Körper aus. Danke im Voraus