java.lang.NoClassDefFoundError:dk/brics/automaton/BasicAutomata Execption
我使用owlapi返回给定类的个体。在使用pizza本体测试代码时,它工作得非常完美,但当我在本体上测试代码时,出现以下异常:java.lang.NoClassDefFoundError:dk/brics/automaton/BasicAutomata Execption,java,ontology,owl-api,Java,Ontology,Owl Api,我使用owlapi返回给定类的个体。在使用pizza本体测试代码时,它工作得非常完美,但当我在本体上测试代码时,出现以下异常: Exception in thread "main" java.lang.NoClassDefFoundError: dk/brics/automaton/BasicAutomata at org.semanticweb.HermiT.datatypes.rdfplainliteral.RDFPlainLiteralPatternValueSpaceSubset
Exception in thread "main" java.lang.NoClassDefFoundError: dk/brics/automaton/BasicAutomata
at org.semanticweb.HermiT.datatypes.rdfplainliteral.RDFPlainLiteralPatternValueSpaceSubset.<clinit>(RDFPlainLiteralPatternValueSpaceSubset.java:49)
at org.semanticweb.HermiT.datatypes.rdfplainliteral.RDFPlainLiteralDatatypeHandler.registerPatternDatatype(RDFPlainLiteralDatatypeHandler.java:53)
at org.semanticweb.HermiT.datatypes.rdfplainliteral.RDFPlainLiteralDatatypeHandler.<clinit>(RDFPlainLiteralDatatypeHandler.java:45)
at org.semanticweb.HermiT.datatypes.DatatypeRegistry.<clinit>(DatatypeRegistry.java:44)
at org.semanticweb.HermiT.structural.OWLClausification$DataRangeConverter.visit(OWLClausification.java:744)
at org.semanticweb.owlapi.model.OWLDatatype.accept(OWLDatatype.java:141)
at org.semanticweb.HermiT.structural.OWLClausification$DataRangeConverter.convertDataRange(OWLClausification.java:730)
at org.semanticweb.HermiT.structural.OWLClausification$NormalizedAxiomClausifier.visit(OWLClausification.java:574)
at org.semanticweb.owlapi.model.OWLDataAllValuesFrom.accept(OWLDataAllValuesFrom.java:52)
at org.semanticweb.HermiT.structural.OWLClausification.clausify(OWLClausification.java:162)
at org.semanticweb.HermiT.structural.OWLClausification.preprocessAndClausify(OWLClausification.java:92)
at org.semanticweb.HermiT.Reasoner.loadOntology(Reasoner.java:210)
at org.semanticweb.HermiT.Reasoner.<init>(Reasoner.java:201)
at org.semanticweb.HermiT.Reasoner.<init>(Reasoner.java:175)
at org.semanticweb.HermiT.ReasonerFactory.createHermiTOWLReasoner(ReasonerFactory.java:51)
at org.semanticweb.HermiT.ReasonerFactory.createReasoner(ReasonerFactory.java:19)
at org.semanticweb.HermiT.ReasonerFactory.createReasoner(ReasonerFactory.java:15)
at Main.main(Main.java:40)
Caused by: java.lang.ClassNotFoundException: dk.brics.automaton.BasicAutomata
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)
... 18 more
线程“main”java.lang.NoClassDefFoundError中出现异常:dk/brics/automaton/BasicAutomata
位于org.semanticweb.HermiT.datatypes.rdfplainliteral.RDFPlainLiteralPatternValueSpaceSubset。(RDFPlainLiteralPatternValueSpaceSubset.java:49)
位于org.semanticweb.HermiT.datatypes.rdfplainliteral.RDFPlainLiteralDatatypeHandler.registerPatternDatatype(RDFPlainLiteralDatatypeHandler.java:53)
位于org.semanticweb.HermiT.datatypes.rdfplainliteral.RDFPlainLiteralDatatypeHandler.(RDFPlainLiteralDatatypeHandler.java:45)
位于org.semanticweb.HermiT.datatypes.DatatypeRegistry.(DatatypeRegistry.java:44)
位于org.semanticweb.HermiT.structural.owlclausionization$DataRangeConverter.visit(owlclausionization.java:744)
位于org.semanticweb.owlapi.model.OWLDatatype.accept(OWLDatatype.java:141)
位于org.semanticweb.HermiT.structural.owlclausionization$DataRangeConverter.convertDataRange(owlclausionization.java:730)
访问org.semanticweb.HermiT.structural.owlclausionization$NormalizedAxiomClausifier.visit(owlclausionization.java:574)
位于org.semanticweb.owlapi.model.OWLDataAllValuesFrom.accept(OWLDataAllValuesFrom.java:52)
位于org.semanticweb.HermiT.structural.owlclausionization.clausify(owlclausionization.java:162)
位于org.semanticweb.HermiT.structural.owlclausionization.preprocessandclusionization(owlclausionization.java:92)
位于org.semanticweb.HermiT.Reasoner.loadOntology(Reasoner.java:210)
位于org.semanticweb.HermiT.Reasoner(Reasoner.java:201)
位于org.semanticweb.HermiT.Reasoner(Reasoner.java:175)
位于org.semanticweb.HermiT.ReasonerFactory.createHermiTOWLReasoner(ReasonerFactory.java:51)
位于org.semanticweb.HermiT.ReasonerFactory.createReasoner(ReasonerFactory.java:19)
位于org.semanticweb.HermiT.ReasonerFactory.createReasoner(ReasonerFactory.java:15)
Main.Main(Main.java:40)
原因:java.lang.ClassNotFoundException:dk.brics.automaton.BasicAutomata
位于java.net.URLClassLoader.findClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于sun.misc.Launcher$AppClassLoader.loadClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
... 还有18个
我注意到这个问题是由于我在本体中使用的数据属性造成的。(当我删除所有数据属性时,它会工作,但当我添加它们时,错误再次出现)您应该在项目中的pom.xml中添加依赖项: 第一: 将以下依赖项添加到项目中的pom.xml中
<dependency>
<groupId>dk.brics.automaton</groupId>
<artifactId>automaton</artifactId>
<version>1.11-8</version>
</dependency>
dk.brics.automaton
自动机
1.11-8
第二:
在项目的根目录中执行mvn包