Ошибка при загрузке rJava на Rstudio Server в Centos 6.5

Я пытаюсь загрузить rJava в Rstudio Server 0.99.467 и Revolution Analytics Open R 3.2.0 (который в основном является стандартным R 3.2.0 с некоторыми дополнительными пакетами), и я получаю следующую ошибку

> require(rJava)
Loading required package: rJava
Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: dyn.load(file, DLLpath = DLLpath, ...)
  error: unable to load shared object '/usr/lib64/RRO-3.2.0/R-3.2.0/lib64/R/library/rJava/libs/rJava.so':
  libjvm.so: cannot open shared object file: No such file or directory

Я использую Centos 6.5 и Oracle Java 1.8 JDK

[root@server ~]# java -version
java version "1.8.0_51"
Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)

Я погуглил проблему, и одним из решений было установить JAVA_HOME на пустую строку, однако я уже установил это значение.

> Sys.getenv("JAVA_HOME")
[1] ""

Также у меня есть два пути к библиотеке, если это может быть причиной проблемы:

> .libPaths()
[1] "/home/kjedrzejewski/R/x86_64-unknown-linux-gnu-library/3.2"
[2] "/usr/lib64/RRO-3.2.0/R-3.2.0/lib64/R/library" 

Когда я пытаюсь загрузить этот пакет в консоль R в bash, такая ошибка не появляется.

1 ответ

Все начало работать, когда я с правами root запускаю команды:

R CMD javareconf
rstudio-server verify-installation

Я не уверен, что именно помогло.

В моем случае проблема заключалась в том, что $LD_LIBRARY_PATH, как к нему обратился Rstudio (Sys.getenv('LD_LIBRARY_PATH')), указывал на другую версию Java, чем я использовал.

Другие вопросы по тегам