rJava ::。jnew(“ edu.stanford.nlp.pipeline.StanfordCoreNLP”,basename(path))中的错误

时间:2019-09-01 15:02:42

标签: java r stanford-nlp rjava

我想在R软件中使用“ coreNLP”库。我正在使用ubuntu,而Java版本是11.0.4。

在使用initCoreNLP()

时出现错误
  

rJava ::。jnew(“ edu.stanford.nlp.pipeline.StanfordCoreNLP”,basename(path))中的错误:

我尝试通过使用dyn.load('/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre/lib/server/libjvm.dylib')

解决此问题

然后删除rJava并重新安装。 但是,当我在R中使用dyn.load时,会出现此错误

  

ibjvm.dylib:无法打开共享库文件:没有这样的文件或目录

当我尝试使用以下命令检查文件是否存在

ls /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home

表明'jre/lib/server/libjvm.dylib'不存在

注意::

使用library(rJava)

时没有任何问题

另外,我使用/usr/lib/jvm/java-11-openjdk-amd64/lib/server目录将其导出到LD_LIBRARY_PATH中,因为它具有libjvm.so文件

我现在应该怎么解决这个问题?

1 个答案:

答案 0 :(得分:0)

.dylib是基于macOS共享库的扩展。如果您使用的是Ubuntu,它将是.so

因此,您似乎有某种混合环境。实际上,这种布局

/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home

好像是macOS one。

无论如何。我建议从头开始。尝试:

    使用Java

  • R中配置sudo R CMD javareconf

  • 使用`install.packages('rJava')

  • 安装rJava
  • 确保您的Java + R环境。运行良好。我建议先运行简单的代码,然后再转向更复杂的东西。例如:

http://www.owsiak.org/running-java-code-in-r/

  • 确保您的coreNLPR中可见-例如JAR文件位于CLASSPATH