web-dev-qa-db-fra.com

Impossible d'installer rJava dans R (Ubuntu 18.04)

Après la mise à niveau d'Ubuntu 16 à 18.4, je ne peux pas installer le package rJava dans R.

J'ai lu d'autres articles comme celui-ci, mais je n'ai pas résolu mon problème. Si je lance install.packages("rJava") sur R, les résultats sont les suivants:

Error: package or namespace load failed for ‘rJava’:
.onLoad failed in loadNamespace() for 'rJava', details:
  call: dyn.load(file, DLLpath = DLLpath, ...)
  error: unable to load shared object '/home/salvatore/R/x86_64-pc-linux-gnu-library/3.5/rJava/libs/rJava.so':
  libjvm.so: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/home/salvatore/R/x86_64-pc-linux-gnu-library/3.5/rJava’

quand je lance Sudo R CMD javareconf:

Java interpreter : /usr/lib/jvm/Java-8-Oracle/jre/bin/Java
Java version     : 1.8.0_181
Java home path   : /usr/lib/jvm/Java-8-Oracle
Java compiler    : /usr/lib/jvm/Java-8-Oracle/bin/javac
Java headers gen.: /usr/lib/jvm/Java-8-Oracle/bin/javah
Java archive tool: /usr/lib/jvm/Java-8-Oracle/bin/jar

trying to compile and link a JNI program 
detected JNI cpp flags    : -I$(Java_HOME)/include -I$(Java_HOME)/include/linux
detected JNI linker flags : -L$(Java_HOME)/jre/lib/AMD64/server -ljvm
gcc -std=gnu99 -I"/usr/share/R/include" -DNDEBUG -I/usr/lib/jvm/Java-8-Oracle/include -I/usr/lib/jvm/Java-8-Oracle/include/linux     -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-oNcpyf/r-base-3.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c conftest.c -o conftest.o
gcc -std=gnu99 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o conftest.so conftest.o -L/usr/lib/jvm/Java-8-Oracle/jre/lib/AMD64/server -ljvm -L/usr/lib/R/lib -lR


Java_HOME        : /usr/lib/jvm/Java-8-Oracle
Java library path: $(Java_HOME)/jre/lib/AMD64/server
JNI cpp flags    : -I$(Java_HOME)/include -I$(Java_HOME)/include/linux
JNI linker flags : -L$(Java_HOME)/jre/lib/AMD64/server -ljvm
Updating Java configuration in /usr/lib/R
Done.

Toute aide serait la bienvenue.

3
Salvo Comunque

Dans mon cas, je devais aussi utiliser: Sudo R CMD javareconf, pour que cela fonctionne.

2
Niels

Sur ma propre installation d’Ubuntu 18.04 LTS j’ai fait ce qui suit

Sudo apt-get install r-base-dev default-jdk

(J'ai donc R 3.4 du référentiel officiel).

Ensuite, dans R ou dans la session RStudio 1.1.456:

install.packages('rJava')

et cela s'est terminé par

* DONE (rJava)

Remarque: J'utilise OpenJDK 11 par défaut du référentiel Bionic -

$ update-Java-alternatives -l
Java-1.11.0-openjdk-AMD64      1101      /usr/lib/jvm/Java-1.11.0-openjdk-AMD64
1
N0rbert

Exécution d’Ubuntu 18.04 64 bits, R 3,60 et RStudio 1.2.1335.

Dans mon cas, je devais faire ce qui suit:

  1. (Temporairement) désactivez Oracle Java 8 en renommant jdk.csh et jdk.sh en jdk.csh.old et jdk.sh.old (dans etc/profile.d).

  2. Installez Java-11-openjdk.

  3. Ajoutez Java_HOME = "/ usr/lib/jvm/Java-11-openjdk" à/etc/environment.

  4. Exécutez "Sudo update-alternatives --config Java" et sélectionnez "/usr/lib/jvm/Java-11-openjdk-AMD64.bin/Java".

  5. Exécutez "Sudo R CMD javareconf".

  6. Déconnexion/connexion.

  7. Ouvrez RStudio et installez rJava.

rJava a ensuite été installé sans erreur.

0
Hypersphere