簡體   English   中英

無法從耶拿查詢d2rq ttl文件

[英]Unable to query d2rq ttl file from Jena

我正在嘗試從d2rq生成的ttl文件進行查詢。 以下是我的代碼段:

        ModelD2RQ m = new ModelD2RQ("file:C:\\Users\\599782\\Downloads\\d2rq-0.8.1\\northwind.ttl");
        String sparql = 
            "PREFIX vocab: <http://localhost:2020/resource/vocab/>" +
            "select ?firstname ?lastname where{"+
                "?x vocab:employees_Country 'USA'."+
                "?x vocab:employees_FirstName ?firstname."+
                "?x vocab:employees_LastName ?lastname."+
            "}";
        Query q = QueryFactory.create(sparql); 
        ResultSet rs = QueryExecutionFactory.create(q, m).execSelect();
        ResultSetFormatter.out(System.out, rs, q);
        m.close();

它顯示了此異常:

Exception in thread "main" java.lang.IncompatibleClassChangeError: Class com.hp.hpl.jena.sparql.algebra.op.OpProject does not implement the requested interface org.openjena.atlas.io.Printable
at org.openjena.atlas.io.PrintUtils.toString(PrintUtils.java:28)
at de.fuberlin.wiwiss.d2rq.engine.QueryEngineD2RQ.translate(QueryEngineD2RQ.java:70)
at de.fuberlin.wiwiss.d2rq.engine.QueryEngineD2RQ.modifyOp(QueryEngineD2RQ.java:60)
at com.hp.hpl.jena.sparql.engine.QueryEngineBase.createPlan(QueryEngineBase.java:94)
at com.hp.hpl.jena.sparql.engine.QueryEngineBase.getPlan(QueryEngineBase.java:87)
at de.fuberlin.wiwiss.d2rq.engine.QueryEngineD2RQ$QueryEngineFactoryD2RQ.create(QueryEngineD2RQ.java:110)
at com.hp.hpl.jena.sparql.engine.QueryExecutionBase.getPlan(QueryExecutionBase.java:513)
at com.hp.hpl.jena.sparql.engine.QueryExecutionBase.startQueryIterator(QueryExecutionBase.java:490)
at com.hp.hpl.jena.sparql.engine.QueryExecutionBase.execResultSet(QueryExecutionBase.java:498)
at com.hp.hpl.jena.sparql.engine.QueryExecutionBase.execSelect(QueryExecutionBase.java:194)
at com.jenaproj.HelloJena.main(HelloJena.java:159)

任何人都不會知道會發生什么。

java.lang.IncompatibleClassChangeError

您的類路徑上的jar版本不兼容。

如果使用d2rq中的Jena jar,則它們應該是正確的版本,否則,您需要針對您要使用的Jena jar編譯的d2rq版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM