J'essaye de configurer un projet Java sur un ordinateur Windows qui appelle du code R en utilisant rJava / JRI. J'ai installé les bibliothèques JDK 1.8 , R 3.5.3 et rJava dans R sur mon ordinateur. J'ai ajouté ce qui suit à ma variable Path : D: \ Program Files \ R \ R-3.5.3 \ bin \ x64; D: \ Program Files \ R \ R-3.5.3 \ library \ rJava \ jri \ x64 . J'ai également configuré le chemin de construction dans Eclipse en ajoutant les trois fichiers JAR du dossier jri en tant que JAR externes et en changeant la bibliothèque native en D: / Program Files / R / R-3.5.3 / library / rJava / jri / x64 . Ce sont les mêmes étapes que j'ai récemment effectuées sur un autre ordinateur Windows et ensuite le script de test R a parfaitement fonctionné. Cependant, sur mon ordinateur actuel, je continue de recevoir le message suivant:
Please make sure that the JRI native library is in a directory listed in java.library.path.
java.lang.UnsatisfiedLinkError: D:\Program Files\R\R-3.5.3\library\rJava\jri\x64\jri.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.rosuda.JRI.Rengine.<clinit>(Rengine.java:19)
at rtest.main(rtest.java:61)
Une idée de ce qui ne va pas? Je serais vraiment reconnaissant pour toute aide.
EDIT: Voici à quoi ressemble mon chemin de construction:
EDIT2: De plus, j'ai maintenant copié tous les fichiers .DLL de D: \ Program Files \ R \ R-3.5.3 \ bin \ x64 avec jri.dll à D: \ Program Files \ Java \ jdk1.8.0_201 \ bin comme recommandé ici . Toujours pas de chance.
3 Réponses :
Essayez ceci:
project> Java Build Path (ici vous pouvez regarder votre
bibliothèques et bibliothèques d'importation) eclipse.ini et vérifiez que votre JDK est correctement lié J'ai inséré une capture d'écran du chemin de construction pour ce projet dans ma question d'origine. Je ne sais pas ce que je peux ajouter d'autre. J'ai juste essayé de nettoyer et de reconstruire, mais cela n'a rien changé. Que voulez-vous dire en vérifiant mon JDK? Je n'ai qu'un seul Eclipse installé sur cet ordinateur.
Si vous utilisez un framework pour votre entreprise ou une application dans eclipse, vous pouvez utiliser un autre JDK que les exigences et rechercher votre compatibilité pour votre version d'Eclipse et votre JDK actuel, vérifiez vos applications par rapport à JDK (si vous utilisez) et la version Eclipse par rapport à JDK
Ok, je l'ai. Après avoir fait tout ce qui est listé dans le premier article, j'ai également copié tous les fichiers .DLL de D: \ Program Files \ R \ R-3.5.3 \ bin \ x64 code > avec jri.dll de D: \ Program Files \ R \ R-3.5.3 \ library \ rJava \ jri \ x64 à D: \ Program Files \ Java \ jre1.8.0_201 \ bin (en plus du dossier JDK ). Maintenant, le script de test fonctionne. Merci à tous ceux qui ont essayé de vous aider!
Please try this one: Run As -> Run Configuration -> Set Environment Variables ->New Name : PATH Value: C:\Program Files\R\R-3.6.1\bin\x64;C:\Users\[Username]\Documents\R\win-library\3.6\rJava\jri\x64;
Utilisez-vous Eclipse? Dans le répertoire de travail du jeu de configuration d'exécution, le dossier avec les DLL
Copie possible de la Configuration de l'interface Java R (JRI)
Oui, j'utilise Eclipse. Comment définir le répertoire de travail?
Avez-vous essayé de définir la variable
PATHcomme dans cette réponse@KarolDowbecki Le
jri.dllse trouve dansD: \ Program Files \ R \ R-3.5.3 \ library \ rJava \ jri \ x64et ce chemin est inclus dans la variablePATH.@RodrigoMenezes J'ai essayé une autre option recommandée dans la question que vous avez citée (voir EDIT 2) mais je continue à recevoir le même message d'erreur. Donc, bien que ce soit la même question, les réponses n'aident pas.