无法解析Jena IRIFactory的NoClassDefFoundError

时间:2014-07-23 08:55:58

标签: java noclassdeffounderror jena rdfa

下面是我得到的错误日志的堆栈跟踪。如果有人能够确定究竟是什么导致这种情况,因为根据堆栈跟踪,我已经完成了所有工作。

Exception in thread "main" java.lang.NoClassDefFoundError: com/hp/hpl/jena/iri/IRIFactory
    at net.rootdev.javardfa.uri.IRIResolver.<init>(IRIResolver.java:26)
    at org.odftoolkit.odfdom.pkg.rdfa.SAXRDFaParser.createInstance(SAXRDFaParser.java:57)
    at org.odftoolkit.odfdom.pkg.OdfFileDom.initialize(OdfFileDom.java:217)
    at org.odftoolkit.odfdom.pkg.manifest.OdfManifestDom.initialize(OdfManifestDom.java:74)
    at org.odftoolkit.odfdom.pkg.OdfFileDom.<init>(OdfFileDom.java:132)
    at org.odftoolkit.odfdom.pkg.manifest.OdfManifestDom.<init>(OdfManifestDom.java:63)
    at org.odftoolkit.odfdom.pkg.OdfFileDom.newFileDom(OdfFileDom.java:189)
    at org.odftoolkit.odfdom.pkg.OdfPackage.parseManifest(OdfPackage.java:1219)
    at org.odftoolkit.odfdom.pkg.OdfPackage.readZip(OdfPackage.java:452)
    at org.odftoolkit.odfdom.pkg.OdfPackage.initializeZip(OdfPackage.java:422)
    at org.odftoolkit.odfdom.pkg.OdfPackage.<init>(OdfPackage.java:250)
    at org.odftoolkit.odfdom.pkg.OdfPackage.loadPackage(OdfPackage.java:320)
    at org.odftoolkit.simple.Document.loadDocument(Document.java:328)
    at org.odftoolkit.simple.TextDocument.loadDocument(TextDocument.java:305)
    at com.poc.LetsGetStarted.main(LetsGetStarted.java:13)
Caused by: java.lang.ClassNotFoundException: com.hp.hpl.jena.iri.IRIFactory
    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)
    ... 15 more

Jar版本:jena-iri:1.0.2,java-rdfa:0.4

感谢。

2 个答案:

答案 0 :(得分:2)

我有理由,我已经尝试了两个java-rdfa版本0.4和0.5快照,但它们都引用com.hp.hpl.jena.iri.IRIFactory,但是在当前包装中,IRIFactory被移动到包org.apache.jena.iri.IRIFactory。< / p>

答案 1 :(得分:1)

com / hp / hpl / jena / iri / IRIFactory类不在类路径中指定的任何JAR中。

查找类IRIFactory是否在CLASS_PATH中的任何jar文件中 1)在Windows中提取每个jar文件并检查类名 2)在linux中使用&#34; jar -tvf [jar-file-name] | grep&#34; IRIFactory&#34;

如果jar都没有包含类文件,请在类路径中添加正确的jar。