I have a Dynamic Web Project in Java and I use Jena and D2RQ libraries. When I start my project as "Java Application", I have this problem:
Exception in thread "main" java.lang.IncompatibleClassChangeError: Implementing class at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) 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) at de.fuberlin.wiwiss.d2rq.algebra.CompatibleRelationGroup.addNodeRelation(CompatibleRelationGroup.java:53) at de.fuberlin.wiwiss.d2rq.algebra.CompatibleRelationGroup.groupNodeRelations(CompatibleRelationGroup.java:38) at de.fuberlin.wiwiss.d2rq.find.FindQuery.iterator(FindQuery.java:78) at de.fuberlin.wiwiss.d2rq.jena.GraphD2RQ.graphBaseFind(GraphD2RQ.java:88) at com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:240) at com.hp.hpl.jena.graph.compose.DisjointUnion.graphBaseFind(DisjointUnion.java:27) at com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:240) at com.hp.hpl.jena.graph.impl.GraphBase.graphBaseFind(GraphBase.java:260) at com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:257) at com.hp.hpl.jena.graph.query.SimpleQueryHandler.predicatesFor(SimpleQueryHandler.java:68) at com.hp.hpl.jena.graph.query.SimpleQueryHandler.predicatesFor(SimpleQueryHandler.java:47) at com.hp.hpl.jena.rdf.model.impl.ModelCom.listPredicates(ModelCom.java:751) at com.hp.hpl.jena.rdf.model.impl.ModelCom.listNameSpaces(ModelCom.java:763) at com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.addNameSpaces(BaseXMLWriter.java:233) at com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.setupNamespaces(BaseXMLWriter.java:487) at com.hp.hpl.jena.xmloutput.impl.BaseXMLWriter.write(BaseXMLWriter.java:469) at MyPackage.MyClass.Mymethod(MyClass.java:118) at MyPackage.Test.main(Test.java:77)
The row 118 of the class "MyClass" contains this code:
writer.write(d2rqModel, new OutputStreamWriter(out, "utf-8"),loader.getResourceBaseURI()); with RDFWriter writer;
and
import com.hp.hpl.jena.rdf.model.RDFWriter;
Why I have this problem?
In addition, the same class in a different project works well!!! Why?
You may have added dependency that are ambiguous to compiler's understanding. Verify that you don't have duplicate dependency for same class.