我即将把一个使用Jena 2.6.4的现有OSGi项目转换到另一个框架(结合BndTools从Eclipse Equinox到Apache Felix )。Equinox上的旧项目运行得很好,然而,我在新框架上遇到了一些麻烦。为了将Jena库包含到我的项目中,我创建了一个新的“来自现有JAR归档的插件”。我将其导出到一个可部署的插件中,并将其放入我的本地存储库。从那里我可以将它添加到我的项目的构建路径中。它似乎工作得很好。它可以编译,但当我开始项目时,第一次访问Jena (createResource)时,org.xml.sax.SAXException上有一个NoClassDefFoundException。为了解决这个问题,我决定将Jena库升级到2.7 (从a here)。因此,我执行了与上面完全相同的步骤。这个项目,再一次,可以编译并运行得更远。现在,createResource-call没有崩溃,并且工作得很好。然而,在执行SPARQL查询时,项目崩溃了。下面是堆栈跟踪的摘录:
java.lang.NoClassDefFoundError: javax/management/MalformedObjectNameException
at com.hp.hpl.jena.query.ARQ.init(ARQ.java:437)
at com.hp.hpl.jena.query.ARQ.<clinit>(ARQ.java:456)
at com.hp.hpl.jena.query.Query.<clinit>(Query.java:62)
at com.hp.hpl.jena.query.QueryFactory.create(QueryFactory.java:80)
at com.hp.hpl.jena.query.QueryFactory.create(QueryFactory.java:52)
at com.hp.hpl.jena.query.QueryFactory.create(QueryFactory.java:40)
at com.hp.hpl.jena.query.QueryExecutionFactory.makeQuery(QueryExecutionFactory.java:517)
at com.hp.hpl.jena.query.QueryExecutionFactory.create(QueryExecutionFactory.java:193)事实上,我在Jena库中找不到这个异常的定义。我错过了什么吗?或者任何其他的想法,如何解决这个问题?
尼科
发布于 2012-02-29 17:29:40
在我的例子中,我需要这些JAR:
当我第一次在Jena中遇到这个问题时,我错过了icu4j的问题。
我会在这里发布堆栈跟踪,以防有人谷歌:
java.lang.NoClassDefFoundError: Could not initialize class com.hp.hpl.jena.enhanced.BuiltinPersonalities
at com.hp.hpl.jena.rdf.model.impl.ModelCom.<init>(ModelCom.java:62)
at com.hp.hpl.jena.rdf.model.ModelFactory.createDefaultModel(ModelFactory.java:142)
at com.hp.hpl.jena.rdf.model.ModelFactory.createDefaultModel(ModelFactory.java:136)
at com.satukancinta.dump.command.SiteExport$$anonfun$doExecute$1$$anonfun$apply$1.apply(SiteExport.scala:198)
at com.satukancinta.dump.command.SiteExport$$anonfun$doExecute$1$$anonfun$apply$1.apply(SiteExport.scala:49)
at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59)
at scala.collection.immutable.List.foreach(List.scala:45)发布于 2013-09-15 02:40:55
在apache clerezza项目中有一个包提供了Jena TDB。它有maven groupId org.apache.clerezza.ext和artifactId org.apache.jena.tdb。不幸的是,没有太多的文档。源码在这里:https://svn.apache.org/repos/asf/clerezza/trunk/ext.org.apache.jena.tdb/。
https://stackoverflow.com/questions/9284800
复制相似问题