关于d2rq在执行dump-rdf报错Version number may be negative or greater than 255

通过generate-mapping命令生成了.ttl文件后,执行dump-rdf命令将ttl文件生成.nt文件报错

F:\Soft\d2rq-0.8.1>dump-rdf -o baidu_baike.nt kg_demo_movie_mapping.ttl
Exception in thread "main" java.lang.ExceptionInInitializerError
        at com.ibm.icu.impl.UPropertyAliases.<clinit>(UPropertyAliases.java:87)
        at com.ibm.icu.lang.UCharacter.<clinit>(UCharacter.java:5680)
        at com.hp.hpl.jena.rdf.arp.impl.CharacterModel.isComposingChar(CharacterModel.java:147)
        at com.hp.hpl.jena.rdf.arp.impl.ParserSupport.checkComposingChar(ParserSupport.java:128)
        at com.hp.hpl.jena.rdf.arp.states.AbsWantLiteralValueOrDescription.characters(AbsWantLiteralValueOrDescription.java:59)
        at com.hp.hpl.jena.rdf.arp.states.WantTypedLiteral.characters(WantTypedLiteral.java:28)
        at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.characters(XMLHandler.java:149)
        at org.apache.xerces.parsers.AbstractSAXParser.characters(Unknown Source)
        at org.apache.xerces.impl.XMLNamespaceBinder.characters(Unknown Source)
        at org.apache.xerces.impl.dtd.XMLDTDValidator.characters(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanContent(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:155)
        at com.hp.hpl.jena.rdf.arp.JenaReader.read(JenaReader.java:173)
        at com.hp.hpl.jena.rdf.arp.JenaReader.read(JenaReader.java:160)
        at com.hp.hpl.jena.rdf.arp.JenaReader.read(JenaReader.java:232)
        at com.hp.hpl.jena.rdf.model.impl.ModelCom.read(ModelCom.java:268)
        at com.hp.hpl.jena.ontology.OntDocumentManager.findMetadata(OntDocumentManager.java:894)
        at com.hp.hpl.jena.ontology.OntDocumentManager.initialiseMetadata(OntDocumentManager.java:852)
        at com.hp.hpl.jena.ontology.OntDocumentManager.<init>(OntDocumentManager.java:200)
        at com.hp.hpl.jena.ontology.OntDocumentManager.<init>(OntDocumentManager.java:182)
        at com.hp.hpl.jena.ontology.OntDocumentManager.<init>(OntDocumentManager.java:166)
        at com.hp.hpl.jena.ontology.OntDocumentManager.getInstance(OntDocumentManager.java:244)
        at com.hp.hpl.jena.ontology.OntModelSpec.getDocumentManager(OntModelSpec.java:339)
        at com.hp.hpl.jena.ontology.impl.OntModelImpl.getDocumentManager(OntModelImpl.java:181)
        at com.hp.hpl.jena.ontology.impl.OntModelImpl.loadImports(OntModelImpl.java:1973)
        at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:147)
        at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:119)
        at com.hp.hpl.jena.rdf.model.ModelFactory.createOntologyModel(ModelFactory.java:359)
        at de.fuberlin.wiwiss.d2rq.parser.MapParser.<init>(MapParser.java:85)
        at de.fuberlin.wiwiss.d2rq.SystemLoader.getMapping(SystemLoader.java:300)
        at d2rq.dump_rdf.run(dump_rdf.java:97)
        at de.fuberlin.wiwiss.d2rq.CommandLineTool.process(CommandLineTool.java:158)
        at d2rq.dump_rdf.main(dump_rdf.java:40)
Caused by: java.lang.IllegalArgumentException: Invalid version number: Version number may be negative or greater than 255
        at com.ibm.icu.util.VersionInfo.getInstance(VersionInfo.java:188)
        at com.ibm.icu.impl.ICUDebug.getInstanceLenient(ICUDebug.java:65)
        at com.ibm.icu.impl.ICUDebug.<clinit>(ICUDebug.java:69)
        ... 39 more

解决办法

在 https://github.com/unicode-org/icu/releases/tag/release-68-2 中下载icu4j-68_2.jar这个文件,将d2rq-0.8.1\lib\arq-2.9 中的 icu4j-3.4.4.jar 删除,然后将下载的 icu4j-68_2.jar 复制进去。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值