我正在尝试使用Apache Jena从.owl文件读取RDF / XML模型,但是引发了一个我不理解的异常。出于某种原因,我的同事的Mac计算机上发生了异常,但是该模型在Windows计算机上没有任何异常,也可以正常读取。我想知道是否与Mac上的防火墙有关?这是代码片段:

File selected_file = fc.getSelectedFile(); // fc is a swing JFileChooser
if(selected_file.exists()) {
    OntModel model = ModelFactory.createOntologyModel(modelSpec);
    OntDocumentManager model_dm = model.getDocumentManager();
    model_dm.addAltEntry("http://infoneer.txstate.edu/ontology/MSDL.owl",
        "file:information/MSDL.owl");
    model.read(selected_file.getAbsolutePath(), "RDF/XML");

    ...
}


错误消息显示在下面的屏幕快照中。请注意,“ Window.java:1911”是指上述代码中的“ model.read(sel ...)”行。

java - 从文件读取模型时,Apache Jena异常(仅在Mac上?)-LMLPHP

以下是有问题的“ selected_file”的内容:
https://pastebin.com/raw/fvV96d6L

最佳答案

绝对路径可能有问题。您可以通过直接致电来查明错误

IRI iri = IRIResolver.resolve(selected_file.getAbsolutePath(), null);


其中应列出解决IRI时遇到的所有违规行为。

09-26 20:18