3
votes

jri.dll: Impossible de trouver les bibliothèques dépendantes

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:

 Build Path

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.


6 commentaires

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 PATH comme dans cette réponse


@KarolDowbecki Le jri.dll se trouve dans D: \ Program Files \ R \ R-3.5.3 \ library \ rJava \ jri \ x64 et ce chemin est inclus dans la variable PATH .


@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.


3 Réponses :


0
votes

Essayez ceci:

  1. Faites un clic droit sur project> Java Build Path (ici vous pouvez regarder votre bibliothèques et bibliothèques d'importation)
  2. Essayez de nettoyer et de créer
  3. Vérifiez votre JDK
  4. Si d'autres eclipse sont installés sur votre ordinateur, regardez votre fichier eclipse.ini et vérifiez que votre JDK est correctement lié

2 commentaires

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



1
votes

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 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!


0 commentaires

2
votes
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;

0 commentaires