Lorsque je tape require(xlsx)
afin de charger le package xlsx
dans R, les messages suivants s'affichent:
> require(xlsx)
Loading required package: xlsx
Loading required package: xlsxjars
Loading required package: rJava
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: fun(libname, pkgname)
error: Java_HOME cannot be determined from the Registry
Failed with error: ‘package ‘rJava’ could not be loaded’
J'ai également essayé de charger le paquet rJava
manuellement mais j'ai reçu le message d'erreur suivant:
require(rJava)
Loading required package: rJava
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: fun(libname, pkgname)
error: No CurrentVersion entry in Software/JavaSoft registry! Try re-installing Java and make sure R and Java have matching architectures.
Avez-vous des suggestions sur la façon de résoudre le problème?
La raison en est probablement liée au fait que vous utilisez une version 64-bit du système d'exploitation, mais que Java n'est pas installé avec la même architecture . Ce que vous devez faire est de télécharger Java 64-bit depuis cette page: https://www.Java.com/fr/download/manual.jsp
Après cela, essayez simplement de recharger le paquet xlsx
. Vous ne devriez pas avoir besoin de redémarrer R.
J'ai eu un problème similaire, ce qui a fonctionné pour moi a été de définir Java_HOME. Je l'ai fatigué d'abord dans R:
Sys.setenv(Java_HOME = "C:/Program Files/Java/jdk1.8.0_101/")
Et quand cela a fonctionné, je l'ai défini dans Propriétés système -> Avancé -> Variables d'environnement en ajoutant une nouvelle variable système. J'ai ensuite redémarré R/RStudio et tout a fonctionné.
C'est parce que l'une des versions de Java (32 bits/64 bits) est manquante sur votre ordinateur. Essayez d'installer les deux Jdks et exécutez le code.
Après l’installation des Jdks, ouvrez R et tapez le code
system("Java -version")
Cela vous donnera la version de Jdk installée. Ensuite, essayez de charger le paquet rJava. Cela a fonctionné pour moi.
Si vous rencontrez cette erreur dans RStudio, utilisez le code environnemental de Lauren ci-dessus et modifiez votre version R en version 32 bits dans Outils, Options globales. Il devrait y avoir des options R 32 bits et 64 bits si vous avez une version plus récente. Cela nécessitera un redémarrage de R et limitera vos options de mémoire. L'installation de la version 64 bits du jre ne sera toutefois pas nécessaire.
J'ai eu un problème similaire. Cela est dû au paquet dépendant 'rJava'. Ce problème peut être surmonté en redirigeant le R d'utiliser un Java_HOME
différent.
if(Sys.getenv("Java_HOME")!=""){
Sys.setenv(Java_HOME="")
}
library(rJava)
Cela a fonctionné pour moi.
Répondre dans link a résolu mon problème.
Avant la résolution, j'ai essayé d'ajouter Java_HOME aux environnements Windows. Il a résolu cette erreur mais créé un autre problème. La solution décrite ci-dessus résout ce problème sans créer de problèmes supplémentaires.
Je pense avoir trouvé la résolution car j'avais le même problème!
Mon correctif consistait à installer la mise à jour 181 de la JRE (environnement d'exécution Java) 32 bits et 64 bits (j'ai besoin de 32 bits pour une autre application, mais votre correctif peut très bien consister à réinstaller 64 bits par lui-même.)
Si vous avez ce problème avec macOS, il n’existe pas de moyen simple ici :( Surtout lorsque vous souhaitez utiliser la version R3.4. J'y suis déjà allé;)
R 3.4, rJava, macOS et encore plus de bazar;)
Pour R3.3, ce n’est pas un petit peu plus facile (R3.3 a été compilé avec un compilateur différent).
Un autre paquet que vous pouvez utiliser est readxl . Ce paquet ne nécessite pas de dépendances externes.