You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jena.apache.org by Diana Magdi <di...@gmail.com> on 2015/04/25 17:49:40 UTC

trying to use Jena with Pellet reasoner

Hi,

I'm trying to use Jena 2.13.0 with Pellet; I downloaded the latest Apache
Jena library  2.13.0.

Then, I downloaded  the jar file pellet-jena-2.3.2 and imported the JENA
libraries.

 But i get this exception:

Exception in thread "main" java.lang.IllegalAccessError: tried to access
field com.hp.hpl.jena.reasoner.BaseInfGraph.isPrepared from class
org.mindswap.pellet.jena.PelletInfGraph

at org.mindswap.pellet.jena.PelletInfGraph.performAdd(
PelletInfGraph.java:534)

at com.hp.hpl.jena.graph.impl.GraphBase.add(GraphBase.java:202)

at org.apache.jena.riot.system.StreamRDFLib$ParserOutputGraph.triple(
StreamRDFLib.java:163)

at org.apache.jena.riot.lang.LangRDFXML$HandlerSink.statement(
LangRDFXML.java:171)

at com.hp.hpl.jena.rdfxml.xmlinput.impl.XMLHandler.triple(XMLHandler.java:73
)

at com.hp.hpl.jena.rdfxml.xmlinput.impl.ParserSupport.triple(
ParserSupport.java:221)

at com.hp.hpl.jena.rdfxml.xmlinput.states.WantDescription.startElement(
WantDescription.java:93)

at com.hp.hpl.jena.rdfxml.xmlinput.impl.XMLHandler.startElement(
XMLHandler.java:112)

at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)

at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown
Source)

at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement(Unknown
Source)

at org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(Unknown Source)

at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown
Source)

at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
Source)

at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)

at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)

at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)

at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)

at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)

at com.hp.hpl.jena.rdfxml.xmlinput.impl.RDFXMLParser.parse(
RDFXMLParser.java:151)

at com.hp.hpl.jena.rdfxml.xmlinput.ARP.load(ARP.java:119)

at org.apache.jena.riot.lang.LangRDFXML.parse(LangRDFXML.java:143)

at org.apache.jena.riot.RDFParserRegistry$ReaderRIOTLang.read(
RDFParserRegistry.java:185)

at org.apache.jena.riot.RDFDataMgr.process(RDFDataMgr.java:906)

at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:257)

at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:243)

at org.apache.jena.riot.adapters.RDFReaderRIOT_Web.read(
RDFReaderRIOT_Web.java:96)

at com.hp.hpl.jena.rdf.model.impl.ModelCom.read(ModelCom.java:235)

at org.mindswap.pellet.examples.JenaReasoner.usageWithDefaultModel(
JenaReasoner.java:56)

at org.mindswap.pellet.examples.JenaReasoner.main(JenaReasoner.java:32)


I downloaded Jena version 2.10.1 .  i tried Jena 2.10.1  with Pellet 2.3.2
but i get this exception.

Exception in thread "main" java.lang.NoClassDefFoundError:
shared/SharedObjectFactory

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClass(ClassLoader.java:800)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)

at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)

at java.net.URLClassLoader.access$100(URLClassLoader.java:71)

at java.net.URLClassLoader$1.run(URLClassLoader.java:361)

at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

at java.lang.ClassLoader.loadClass(ClassLoader.java:425)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)

at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

at org.mindswap.pellet.utils.ATermUtils.<clinit>(ATermUtils.java:64)

at org.mindswap.pellet.jena.graph.loader.DefaultGraphLoader.clear(
DefaultGraphLoader.java:238)

at org.mindswap.pellet.jena.graph.loader.DefaultGraphLoader.<init>(
DefaultGraphLoader.java:181)

at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:95)

at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:53)

at com.hp.hpl.jena.rdf.model.ModelFactory.createInfModel(
ModelFactory.java:261)

at org.mindswap.pellet.examples.JenaReasoner.usageWithDefaultModel(
JenaReasoner.java:53)

at org.mindswap.pellet.examples.JenaReasoner.main(JenaReasoner.java:32)

Caused by: java.lang.ClassNotFoundException: shared.SharedObjectFactory

at java.net.URLClassLoader$1.run(URLClassLoader.java:366)

at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

at java.lang.ClassLoader.loadClass(ClassLoader.java:425)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)

at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

... 20 more

Then i downloaded the jar file for shared object and i added this file in
the classpath but i get the same exception that I had with Jena 2.13.

Exception in thread "main" java.lang.IllegalAccessError: tried to access
field com.hp.hpl.jena.reasoner.BaseInfGraph.isPrepared from class
org.mindswap.pellet.jena.PelletInfGraph

at org.mindswap.pellet.jena.PelletInfGraph.performAdd(
PelletInfGraph.java:534)

at com.hp.hpl.jena.graph.impl.GraphBase.add(GraphBase.java:202)

at org.apache.jena.riot.system.StreamRDFLib$ParserOutputGraph.triple(
StreamRDFLib.java:150)

at org.apache.jena.riot.lang.LangRDFXML$HandlerSink.statement(
LangRDFXML.java:170)

at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.triple(XMLHandler.java:82)

at com.hp.hpl.jena.rdf.arp.impl.ParserSupport.triple(ParserSupport.java:225)

at com.hp.hpl.jena.rdf.arp.states.WantDescription.startElement(
WantDescription.java:99)

at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.startElement(XMLHandler.java:121)

at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)

at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown
Source)

at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement(Unknown
Source)

at org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(Unknown Source)

at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown
Source)

at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
Source)

at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)

at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)

at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)

at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)

at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)

at com.hp.hpl.jena.rdf.arp.impl.RDFXMLParser.parse(RDFXMLParser.java:151)

at com.hp.hpl.jena.rdf.arp.ARP.load(ARP.java:119)

at org.apache.jena.riot.lang.LangRDFXML.parse(LangRDFXML.java:142)

at org.apache.jena.riot.RDFParserRegistry$ReaderRIOTFactoryImpl$1.read(
RDFParserRegistry.java:142)

at org.apache.jena.riot.RDFDataMgr.process(RDFDataMgr.java:760)

at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:652)

at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:211)

at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:184)

at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:122)

at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:113)

at org.apache.jena.riot.adapters.RDFReaderRIOT.read(RDFReaderRIOT.java:77)

at com.hp.hpl.jena.rdf.model.impl.ModelCom.read(ModelCom.java:229)

Any help will be appreciated. Thanks
Cheers,

Diana

Re: trying to use Jena with Pellet reasoner

Posted by Andy Seaborne <an...@apache.org>.
Pellet hasn't updated it's dependency on jena in several years. You'll 
need to use the jena jars that match Pellet.

jena 2.10.1 looks to be your best bet.

https://github.com/Complexible/pellet/blob/master/pom.xml#L45

http://stackoverflow.com/questions/28781322/using-jena-with-pellet-noclassdeffounderror-exeption

if if the issue below is fixed, there maybe others so the best course is 
to clone from github and build it with an updated dependency

	Andy

On 25/04/15 16:49, Diana Magdi wrote:
> Hi,
>
> I'm trying to use Jena 2.13.0 with Pellet; I downloaded the latest Apache
> Jena library  2.13.0.
>
> Then, I downloaded  the jar file pellet-jena-2.3.2 and imported the JENA
> libraries.
>
>   But i get this exception:
>
> Exception in thread "main" java.lang.IllegalAccessError: tried to access
> field com.hp.hpl.jena.reasoner.BaseInfGraph.isPrepared from class
> org.mindswap.pellet.jena.PelletInfGraph
>
> at org.mindswap.pellet.jena.PelletInfGraph.performAdd(
> PelletInfGraph.java:534)
>
> at com.hp.hpl.jena.graph.impl.GraphBase.add(GraphBase.java:202)
>
> at org.apache.jena.riot.system.StreamRDFLib$ParserOutputGraph.triple(
> StreamRDFLib.java:163)
>
> at org.apache.jena.riot.lang.LangRDFXML$HandlerSink.statement(
> LangRDFXML.java:171)
>
> at com.hp.hpl.jena.rdfxml.xmlinput.impl.XMLHandler.triple(XMLHandler.java:73
> )
>
> at com.hp.hpl.jena.rdfxml.xmlinput.impl.ParserSupport.triple(
> ParserSupport.java:221)
>
> at com.hp.hpl.jena.rdfxml.xmlinput.states.WantDescription.startElement(
> WantDescription.java:93)
>
> at com.hp.hpl.jena.rdfxml.xmlinput.impl.XMLHandler.startElement(
> XMLHandler.java:112)
>
> at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
>
> at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown
> Source)
>
> at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement(Unknown
> Source)
>
> at org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(Unknown Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown
> Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> Source)
>
> at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
>
> at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
>
> at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>
> at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
>
> at com.hp.hpl.jena.rdfxml.xmlinput.impl.RDFXMLParser.parse(
> RDFXMLParser.java:151)
>
> at com.hp.hpl.jena.rdfxml.xmlinput.ARP.load(ARP.java:119)
>
> at org.apache.jena.riot.lang.LangRDFXML.parse(LangRDFXML.java:143)
>
> at org.apache.jena.riot.RDFParserRegistry$ReaderRIOTLang.read(
> RDFParserRegistry.java:185)
>
> at org.apache.jena.riot.RDFDataMgr.process(RDFDataMgr.java:906)
>
> at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:257)
>
> at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:243)
>
> at org.apache.jena.riot.adapters.RDFReaderRIOT_Web.read(
> RDFReaderRIOT_Web.java:96)
>
> at com.hp.hpl.jena.rdf.model.impl.ModelCom.read(ModelCom.java:235)
>
> at org.mindswap.pellet.examples.JenaReasoner.usageWithDefaultModel(
> JenaReasoner.java:56)
>
> at org.mindswap.pellet.examples.JenaReasoner.main(JenaReasoner.java:32)
>
>
> I downloaded Jena version 2.10.1 .  i tried Jena 2.10.1  with Pellet 2.3.2
> but i get this exception.
>
> Exception in thread "main" java.lang.NoClassDefFoundError:
> shared/SharedObjectFactory
>
> at java.lang.ClassLoader.defineClass1(Native Method)
>
> at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
>
> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
>
> at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
>
> at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
>
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>
> at java.security.AccessController.doPrivileged(Native Method)
>
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
>
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
>
> at org.mindswap.pellet.utils.ATermUtils.<clinit>(ATermUtils.java:64)
>
> at org.mindswap.pellet.jena.graph.loader.DefaultGraphLoader.clear(
> DefaultGraphLoader.java:238)
>
> at org.mindswap.pellet.jena.graph.loader.DefaultGraphLoader.<init>(
> DefaultGraphLoader.java:181)
>
> at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:95)
>
> at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:53)
>
> at com.hp.hpl.jena.rdf.model.ModelFactory.createInfModel(
> ModelFactory.java:261)
>
> at org.mindswap.pellet.examples.JenaReasoner.usageWithDefaultModel(
> JenaReasoner.java:53)
>
> at org.mindswap.pellet.examples.JenaReasoner.main(JenaReasoner.java:32)
>
> Caused by: java.lang.ClassNotFoundException: shared.SharedObjectFactory
>
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>
> at java.security.AccessController.doPrivileged(Native Method)
>
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
>
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
>
> ... 20 more
>
> Then i downloaded the jar file for shared object and i added this file in
> the classpath but i get the same exception that I had with Jena 2.13.
>
> Exception in thread "main" java.lang.IllegalAccessError: tried to access
> field com.hp.hpl.jena.reasoner.BaseInfGraph.isPrepared from class
> org.mindswap.pellet.jena.PelletInfGraph
>
> at org.mindswap.pellet.jena.PelletInfGraph.performAdd(
> PelletInfGraph.java:534)
>
> at com.hp.hpl.jena.graph.impl.GraphBase.add(GraphBase.java:202)
>
> at org.apache.jena.riot.system.StreamRDFLib$ParserOutputGraph.triple(
> StreamRDFLib.java:150)
>
> at org.apache.jena.riot.lang.LangRDFXML$HandlerSink.statement(
> LangRDFXML.java:170)
>
> at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.triple(XMLHandler.java:82)
>
> at com.hp.hpl.jena.rdf.arp.impl.ParserSupport.triple(ParserSupport.java:225)
>
> at com.hp.hpl.jena.rdf.arp.states.WantDescription.startElement(
> WantDescription.java:99)
>
> at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.startElement(XMLHandler.java:121)
>
> at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
>
> at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown
> Source)
>
> at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement(Unknown
> Source)
>
> at org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(Unknown Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown
> Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> Source)
>
> at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
>
> at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
>
> at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>
> at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
>
> at com.hp.hpl.jena.rdf.arp.impl.RDFXMLParser.parse(RDFXMLParser.java:151)
>
> at com.hp.hpl.jena.rdf.arp.ARP.load(ARP.java:119)
>
> at org.apache.jena.riot.lang.LangRDFXML.parse(LangRDFXML.java:142)
>
> at org.apache.jena.riot.RDFParserRegistry$ReaderRIOTFactoryImpl$1.read(
> RDFParserRegistry.java:142)
>
> at org.apache.jena.riot.RDFDataMgr.process(RDFDataMgr.java:760)
>
> at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:652)
>
> at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:211)
>
> at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:184)
>
> at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:122)
>
> at org.apache.jena.riot.RDFDataMgr.read(RDFDataMgr.java:113)
>
> at org.apache.jena.riot.adapters.RDFReaderRIOT.read(RDFReaderRIOT.java:77)
>
> at com.hp.hpl.jena.rdf.model.impl.ModelCom.read(ModelCom.java:229)
>
> Any help will be appreciated. Thanks
> Cheers,
>
> Diana
>


Re: trying to use Jena with Pellet reasoner

Posted by Andy Seaborne <an...@apache.org>.
https://groups.google.com/d/msg/pellet-users/KPw6UO7b3-4/XVKVK8uZHIQJ

is reported to work

Various other incompatibilities with 2.13.0 which don't look to hard to 
fix in Pellet.

	Andy

On 25/04/15 18:20, Andy Seaborne wrote:
> On 25/04/15 17:57, Dave Reynolds wrote:
>> On 25/04/15 16:49, Diana Magdi wrote:
>>> Hi,
>>>
>>> I'm trying to use Jena 2.13.0 with Pellet; I downloaded the latest
>>> Apache
>>> Jena library  2.13.0.
>>>
>>> Then, I downloaded  the jar file pellet-jena-2.3.2 and imported the JENA
>>> libraries.
>>>
>>>   But i get this exception:
>>>
>>> Exception in thread "main" java.lang.IllegalAccessError: tried to access
>>> field com.hp.hpl.jena.reasoner.BaseInfGraph.isPrepared from class
>>> org.mindswap.pellet.jena.PelletInfGraph
>>
>> Looks like that field was set to private by an earlier fix JENA-399.
>>
>> Should be easy to repair but the codebase is in flux right now so logged
>> as a bug: https://issues.apache.org/jira/browse/JENA-921
>
> Please update the "jena2" branch though no one has offered to do any
> releases of that.
>
> Jena3 is not going to be sufficiently compatibility with Jena 2.10.1 so
> a change in the new codebase won't help.
>
>      Andy
>
>> For now you'll need to either get Pellet to switch to using the accessor
>> method instead of the field (unlikely) or use an earlier jena. The
>> change was made a long time ago (surprised the issue hasn't come up
>> earlier) so you would have to go all the way back to Jena 2.7.4.
>>
>>> I downloaded Jena version 2.10.1 .  i tried Jena 2.10.1  with Pellet
>>> 2.3.2
>>> but i get this exception.
>>>
>>> Exception in thread "main" java.lang.NoClassDefFoundError:
>>> shared/SharedObjectFactory
>>
>> That's not part of Jena but in any case you have to go back even
>> earlier, the change was made on 22 Feb 2013 so I think the that means
>> using the ancient Jena 2.7.4.
>>
>> Dave
>>
>


Re: trying to use Jena with Pellet reasoner

Posted by Andy Seaborne <an...@apache.org>.
On 25/04/15 17:57, Dave Reynolds wrote:
> On 25/04/15 16:49, Diana Magdi wrote:
>> Hi,
>>
>> I'm trying to use Jena 2.13.0 with Pellet; I downloaded the latest Apache
>> Jena library  2.13.0.
>>
>> Then, I downloaded  the jar file pellet-jena-2.3.2 and imported the JENA
>> libraries.
>>
>>   But i get this exception:
>>
>> Exception in thread "main" java.lang.IllegalAccessError: tried to access
>> field com.hp.hpl.jena.reasoner.BaseInfGraph.isPrepared from class
>> org.mindswap.pellet.jena.PelletInfGraph
>
> Looks like that field was set to private by an earlier fix JENA-399.
>
> Should be easy to repair but the codebase is in flux right now so logged
> as a bug: https://issues.apache.org/jira/browse/JENA-921

Please update the "jena2" branch though no one has offered to do any 
releases of that.

Jena3 is not going to be sufficiently compatibility with Jena 2.10.1 so 
a change in the new codebase won't help.

	Andy

> For now you'll need to either get Pellet to switch to using the accessor
> method instead of the field (unlikely) or use an earlier jena. The
> change was made a long time ago (surprised the issue hasn't come up
> earlier) so you would have to go all the way back to Jena 2.7.4.
>
>> I downloaded Jena version 2.10.1 .  i tried Jena 2.10.1  with Pellet
>> 2.3.2
>> but i get this exception.
>>
>> Exception in thread "main" java.lang.NoClassDefFoundError:
>> shared/SharedObjectFactory
>
> That's not part of Jena but in any case you have to go back even
> earlier, the change was made on 22 Feb 2013 so I think the that means
> using the ancient Jena 2.7.4.
>
> Dave
>


Re: trying to use Jena with Pellet reasoner

Posted by Dave Reynolds <da...@gmail.com>.
On 25/04/15 16:49, Diana Magdi wrote:
> Hi,
>
> I'm trying to use Jena 2.13.0 with Pellet; I downloaded the latest Apache
> Jena library  2.13.0.
>
> Then, I downloaded  the jar file pellet-jena-2.3.2 and imported the JENA
> libraries.
>
>   But i get this exception:
>
> Exception in thread "main" java.lang.IllegalAccessError: tried to access
> field com.hp.hpl.jena.reasoner.BaseInfGraph.isPrepared from class
> org.mindswap.pellet.jena.PelletInfGraph

Looks like that field was set to private by an earlier fix JENA-399.

Should be easy to repair but the codebase is in flux right now so logged 
as a bug: https://issues.apache.org/jira/browse/JENA-921

For now you'll need to either get Pellet to switch to using the accessor 
method instead of the field (unlikely) or use an earlier jena. The 
change was made a long time ago (surprised the issue hasn't come up 
earlier) so you would have to go all the way back to Jena 2.7.4.

> I downloaded Jena version 2.10.1 .  i tried Jena 2.10.1  with Pellet 2.3.2
> but i get this exception.
>
> Exception in thread "main" java.lang.NoClassDefFoundError:
> shared/SharedObjectFactory

That's not part of Jena but in any case you have to go back even 
earlier, the change was made on 22 Feb 2013 so I think the that means 
using the ancient Jena 2.7.4.

Dave