Lors de l'installation de rJava à l'aide de la commande install.packages("rJava")
, l'erreur suivante apparaît:
checking Java support in R... present:
interpreter : '/usr/bin/Java'
archiver : '/usr/bin/jar'
compiler : '/usr/bin/javac'
header prep.: '/usr/bin/javah'
cpp flags : '-I/usr/lib/jvm/Java-6-Sun-1.6.0.20/jre/../include -I/usr/lib/jvm/Java-6-Sun-1.6.0.20/jre/../include/linux'
Java libs : '-L/usr/lib/jvm/Java-6-Sun-1.6.0.20/jre/lib/AMD64/server -L/usr/lib/jvm/Java-6-Sun-1.6.0.20/jre/lib/AMD64 -L/usr/lib/jvm/Java-6-Sun-1.6.0.20/jre/../lib/AMD64 -L -L/usr/Java/packages/lib/AMD64 -L/usr/lib64 -L/lib64 -L/lib -L/usr/lib -ljvm'
checking whether JNI programs can be compiled... yes
checking JNI data types... configure: error: One or more JNI types differ from the corresponding native type. You may need to use non-standard compiler flags or a different compiler in order to fix this.
ERROR: configuration failed for package ‘rJava’
Le JDK Java est installé et Java -version
renvoie le texte suivant:
$ Java -version
Java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Lorsque je cherche Google pour l'erreur, je constate que d'autres personnes rencontrent le même problème, mais ne trouvent pas de solution autre que celle "installer l'ensemble du JDK, pas seulement le JRE", ce que j'ai déjà fait.
L’autre chose que j’ai lue était d’exécuter Sudo R CMD javareconf
qui fonctionne très bien, sans erreur.
Des idées ce qu'est mon problème?
[[EDIT]] Cela fait quelques mois que je n'ai pas ce problème. J'avais initialement résolu ce problème en modifiant mes chemins Java, comme illustré dans la réponse que j'ai postée ci-dessous. J'ai récemment rencontré le même problème avec une nouvelle installation Ubuntu. J'ai essayé la recommandation de Dirk d'utiliser apt-get pour installer le paquet rJava. Cela a fonctionné parfaitement. Ce que je n’avais pas compris au début, c’est que l’installation de paquets à l’aide de la méthode Ubuntu apt-get est fondamentalement différente du chargement du même paquet à l’aide de install.packages () dans R. Les paquets Ubuntu résolvent des problèmes que je n’avais ni compris ni apprécié. .
Il s'avère que mon problème était lié à ma variable d'environnement Java_HOME
. Oui, choquant je sais. Mon réglage initial pour PATH
et Java_HOME
ressemblait à ceci:
export Java_HOME=/usr/lib/jvm/Java-6-Sun
export PATH=$PATH:$Java_HOME/bin
Et j'ai ajouté /jre
donc ça ressemble à ça:
export Java_HOME=/usr/lib/jvm/Java-6-Sun/jre
export PATH=$PATH:$Java_HOME/bin
Tout en Java semblait fonctionner correctement sans le /jre
mais rJava ne le ferait pas. Impair.
Ne serait pas
apt-get install r-cran-rjava
ont été plus faciles? Vous auriez pu me demander à useR! :)
Merci - votre suggestion sur $Java_HOME
m'a conduit à une solution similaire:
Prompt$ unset Java_HOME
avant d'invoquer R.
J'ai rencontré le même problème, et cela a fonctionné après l'exécution des commandes ci-dessous.
export Java_LIBS="$Java_LIBS -ldl"
R CMD javareconf
Voir les détails à l'adresse http://www-01.ibm.com/support/knowledgecenter/SSPT3X_3.0.0/com.ibm.swg.im.infosphere.biginsights.install.doc/doc/install_install_r.html
Cela a fonctionné pour moi sur Ubuntu 12.04 et R version 3.0
cd /usr/lib/jvm/Java-6-Sun-1.6.0.26/include
c'est le répertoire qui a jni.h
Créez ensuite un lien symbolique vers un autre fichier d'en-tête requis (je suis trop paresseux pour savoir comment inclure plusieurs répertoires dans l'option Java_CPPFLAGS ci-dessous):
Sudo ln -s linux/jni_md.h .
Finalement
Sudo R CMD javareconf Java_CPPFLAGS=-I/usr/lib/jvm/Java-6-Sun-1.6.0.26/include
ci-dessous est l’une de mes réponses à un autre message - erreur: impossible de charger les paquets installés tout de suite
(cela concerne aussi cette question)
Pour les utilisateurs de Linux (Ubuntu): Si vous avez Oracle-Java (7/8) installé. Ce sera à cet endroit que l'accès /usr/lib/jvm
et Sudo
est requis.
Créez le fichier /etc/ld.so.conf.d/Java.conf
avec les entrées suivantes:
/usr/lib/jvm/Java-8-Oracle/jre/lib/AMD64
/usr/lib/jvm/Java-8-Oracle/jre/lib/AMD64/server
(Remplacez Java-8-Oracle par Java-7-Oracle en fonction de votre version de Java)
Ensuite:
Sudo ldconfig
Redémarrez RStudio puis installez le package rJava.
Lancer R sous Gentoo sur un AMD64. Je suis passé à R 2.12.0
Version R 2.12.0 (2010-10-15) Copyright (C) 2010 La fondation R pour l'informatique statistique ISBN 3-900051-07-0 Plate-forme: x86_64-pc-linux-gnu ( 64 bits) et ces messages embêtants sont partis.
Jan Vandermeer
J'ai essayé d'installer openjdk-7- * mais j'ai quand même eu des problèmes pour installer rJava. Après le redémarrage de l'ordinateur, il n'y a aucun problème.
alors
Sudo apt-get install openjdk-7-*
RESTART after installing Java, then try to install package "rJava" in R
Le package rJava recherche le dossier /usr/lib/jvm/default-Java/
. Mais ce n'est pas disponible par défaut. Ce dossier a un lien symbolique pour le Java par défaut configuré pour le système.
Pour activer Java par défaut, installez les packages suivants:
Sudo apt-get install default-jre default-jre-headless
Testé sur Ubuntu 17.04 avec CRAN R 3.4.1
Ce qui a fonctionné pour moi a été de changer Java_HOME à partir du fichier /usr/lib/R/etc/javaconf
J'ai d'abord vérifié quelle était ma version de Java activée: Sudo update-alternatives --config Java
. Dans mon cas, c'était Java-8-Oracle
J'ai ouvert le fichier /usr/lib/R/etc/javaconf
et remplacé default-Java
par Java-8-Oracle
:
${Java_HOME=/usr/lib/jvm/default-Java}
remplacé par :
${Java_HOME=/usr/lib/jvm/Java-8-Oracle}
Et puis Sudo R CMD javareconf
J'ai redémarré RStudio et j'ai ensuite pu installer rJava.
Je l’ai obtenu en téléchargeant: https://cran.r-project.org/src/contrib/rJava_0.9-8.tar.gz et l’exécution de la commande R CMD install rJava_0.9-8.tar. gz
ce que je fais est ici:
dans /etc/apt/sources.list, ajoutez:
deb http://ftp.de.debian.org/debian sid main
Note: le rjava devrait être la dernière version
2 run: Sudo apt-get update Sudo apt-get installer r-cran-rjava
Une fois que vous avez mis à jour l'ancienne version de rjava, vous pouvez installer rhdfs_1.0.8.
Voilà comment je le fais fonctionner:
Sudo apt-get install default-jre
Sudo apt-get install default-jdk
Sudo R CMD javareconf
install.packages("rJava")
J'avais le même problème lorsque j'utilisais Windows 10. J'ai résolu le problème en suivant la procédure ci-dessous.
Remarque: jdk1.8.0_201 et jre1.8.0_201 seront modifiés en fonction de la version du kit de développement Java et de Java.
Pour vérifier l’installation, ouvrez CMD\Tapez javac\Appuyez sur Entrée, puis sur Tapez Java\appuyez sur Entrée Il affichera
Dans RStudio run
Sys.setenv(Java_HOME="C:\\Program Files\\Java\\jdk1.8.0_201")
Note: jdk1.8.0_201 sera modifié en fonction de la version du kit de développement Java.
Maintenant, vous pouvez installer et charger le paquet rJava sans aucun problème.
Le problème était que rJava ne serait pas installé dans RStudio
(Version 1.0.136
). Ce qui suit a fonctionné pour moi (macOS Sierra version 10.12.6
) (trouvé ici ):
Étape 1: Téléchargez et installez javaforosx.dmg
à partir de ici
Étape 2: Ensuite, lancez la commande depuis RStudio:
install.packages("rJava", type = 'source')