我在JBoss Fuse ESB中使用CoreNLP有一个问题。我通过
在ESB上安装了CoreNLP及其模型install wrap:mvn:edu.stanford.nlp/stanford-corenlp/3.6.0
install wrap:mvn:edu.stanford.nlp/stanford-corenlp/3.6.0//models-english
然后,当我的模块试图使用models-english
时,我有错误日志消息
Caused by: java.io.IOException: Unable to open "edu/stanford/nlp/models/pos-tagger/english-left3words/english-left3words-distsim.tagger" as class path, filename or URL
at edu.stanford.nlp.io.IOUtils.getInputStreamFromURLOrClasspathOrFileSystem(IOUtils.java:485)[275:org.opengravity.camel.nlp:1.0.0.SNAPSHOT]
at edu.stanford.nlp.tagger.maxent.MaxentTagger.readModelAndInit(MaxentTagger.java:765)[275:org.opengravity.camel.nlp:1.0.0.SNAPSHOT]
... 69 more
我尝试通过maven-bundle-plugin
配置来解决这个问题
<Embed-Dependency>stanford-corenlp</Embed-Dependency>
首先我安装了两个模块
install wrap:mvn:edu.stanford.nlp/stanford-corenlp/3.6.0
install wrap:mvn:edu.stanford.nlp/stanford-corenlp/3.6.0//models-english
然后,正如Claus Ibsen建议的那样,我在第一个bundle dev:dynamic-import XXX
上启用了动态导入,其中XXX
是stanford-corenlp-3.6.0
bundle id。