【发布时间】:2014-04-11 09:24:33
【问题描述】:
我有一个 Java 动态 Web 项目,我使用 Jena 和 D2RQ 库。 当我将项目作为“Java 应用程序”启动时,我遇到了这个问题:
线程“main”中的异常 java.lang.IncompatibleClassChangeError:实现类在 java.lang.ClassLoader.defineClass1(本机方法)在 java.lang.ClassLoader.defineClass(未知来源)在 java.security.SecureClassLoader.defineClass(未知来源)在 java.net.URLClassLoader.defineClass(未知来源)在 java.net.URLClassLoader.access$100(未知来源)在 java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) 在 java.net.URLClassLoader.findClass(未知来源)在 java.lang.ClassLoader.loadClass(Unknown Source) 在 sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) 在 de.fuberlin.wiwiss.d2rq.algebra.CompatibleRelationGroup.addNodeRelation(CompatibleRelationGroup.java:53) 在 de.fuberlin.wiwiss.d2rq.algebra.CompatibleRelationGroup.groupNodeRelations(CompatibleRelationGroup.java:38) 在 de.fuberlin.wiwiss.d2rq.find.FindQuery.iterator(FindQuery.java:78) 在 de.fuberlin.wiwiss.d2rq.jena.GraphD2RQ.graphBaseFind(GraphD2RQ.java:88) 在 com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:240) 在 com.hp.hpl.jena.graph.compose.DisjointUnion.graphBaseFind(DisjointUnion.java:27) 在 com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:240) 在 com.hp.hpl.jena.graph.impl.GraphBase.graphBaseFind(GraphBase.java:260) 在 com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:257) 在 com.hp.hpl.jena.graph.query.SimpleQueryHandler.predicatesFor(SimpleQueryHandler.java:68) 在 com.hp.hpl.jena.graph.query.SimpleQueryHandler.predicatesFor(SimpleQueryHandler.java:47) 在 com.hp.hpl.jena.rdf.model.impl.ModelCom.listPredicates(ModelCom.java:751) 在 com.hp.hpl.jena.rdf.model.impl.ModelCom.listNameSpaces(ModelCom.java:763) 在 com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.addNameSpaces(BaseXMLWriter.java:233) 在 com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.setupNamespaces(BaseXMLWriter.java:487) 在 com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.write(BaseXMLWriter.java:469) 在 MyPackage.MyClass.Mymethod(MyClass.java:118) 在 MyPackage.Test.main(Test.java:77)
“MyClass”类的第 118 行包含以下代码:
writer.write(d2rqModel, new OutputStreamWriter(out, "utf-8"),loader.getResourceBaseURI()); 和 RDFWriter 作家;
和
导入 com.hp.hpl.jena.rdf.model.RDFWriter;
为什么我有这个问题?
另外,不同项目中的同一个类也很好用!!!为什么?
【问题讨论】:
标签: java classloader jena incompatibletypeerror d2rq