web-dev-qa-db-fra.com

Impossible de charger rJava sur R

Je souhaite charger rJava dans R x64 3.1.2. OS - Windows 8.1 64 bits

Bien que l'installation semble fonctionner correctement:

  > install.packages("rJava")
    Installing package into ‘C:/Users/sony/Documents/R/win-library/3.1’
    (as ‘lib’ is unspecified)
    --- Please select a CRAN mirror for use in this session ---
    trying URL 'http://cran.utstat.utoronto.ca/bin/windows/contrib/3.1/rJava_0.9-6.Zip'
    Content type 'application/Zip' length 758898 bytes (741 Kb)
    opened URL
    downloaded 741 Kb

package ‘rJava’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
        C:\Users\sony\AppData\Local\Temp\RtmpamYUH7\downloaded_packages

Je reçois une erreur en chargeant le paquet:

library(rJava)
Error in get(Info[i, 1], envir = env) : 
  lazy-load database 'C:/Users/sony/Documents/R/win-library/3.1/rJava/R/rJava.rdb' is corrupt
In addition: Warning message:
In get(Info[i, 1], envir = env) : internal error -3 in R_decompress1
Error: package or namespace load failed for ‘rJava’

Je sais que je travaille sur le bit R-64 et que la variable d'environnement Path est définie sur:

C:\Program Files\Java\jdk1.7.0_51\bin;C:\Program Files\Java\jre7\bin\server;

aussi, donc la version Java est aussi en 64 bits. Je ne comprends pas la raison de l’erreur.

Lors du réglage manuel via R:

options(Java.home="C:\\Program Files\\Java\\jdk1.7.0_51\\bin")
library(rJava)

Je reçois cette erreur:

enter image description here

Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: inDL(x, as.logical(local), as.logical(now), ...)
  error: unable to load shared object 'C:/Users/sony/Documents/R/win-library/3.1/rJava/libs/x64/rJava.dll':
  LoadLibrary failure:  The specified module could not be found.

Error: package or namespace load failed for ‘rJava’

Aucun conseil? L'erreur semble avoir surgi après la désinstallation d'une ancienne version de Java.

AUTRES: J'ajouterai simplement que je ne règle pas Java_HOME en tant que variable d'environnement.

La désinstallation et la réinstallation de R ne semblent pas non plus résoudre le problème.

Supprimer les anciennes Java est également sans aide.

41
Abhishek Bhatia

Utilisation:

Sys.setenv(Java_HOME='...path to JRE...')

par exemple.

Sys.setenv(Java_HOME='C:\\Program Files\\Java\\jdk1.7.0_51\\jre')

Votre variable d'environnement est incorrecte.

33
qjgods

J'ai eu une erreur similaire:

> library(rJava)
Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: inDL(x, as.logical(local), as.logical(now), ...)
  error: unable to load shared object 'C:/program files/R/R-3.1.2/library/rJava/libs/x64/rJava.dll':
  LoadLibrary failure:  The specified module could not be found.

Ma Java_HOME désignait JDK plutôt que JRE.

> Sys.getenv("Java_HOME")
[1] "c:\\Java\\jdk1.7.0_55"
> Sys.setenv(Java_HOME="c:\\Java\\jdk1.7.0_55\\jre")

Je pourrais maintenant charger rJava et xlsx dans R.

19
manoj

J'ai rencontré un problème similaire et j'ai passé une journée entière à le réparer. Bien que mon ordinateur, Windows7 et Rstudio soient en 64 bits, mais mon Java est en 32 bits (!). Une fois que j’ai réalisé cela, je télécharge un fichier Java 64 bits. Je dois télécharger manuellement, le le téléchargement conduira à la version 32 bits car mon chrome navigateur est en 32 bits. 64 bits Java sera automatiquement installé dans

C:\Program Files\Java, cependant, 32 bits Java sera automatiquement installé dans C:\Program Files (x86)\Java.

C’est un indicateur important qui me dit que mon Java vaut 64 bits ou 32 bits.

Après avoir installé le Java 64 bits, tout fonctionne parfaitement!

4
Sunny

Face à un message d'erreur similaire.

J'ai essayé quelques étapes énumérées ici.

  1. Définir Env. Variable, Java_HOME. => N'a pas fonctionné.
  2. J'ai essayé d'installer rJava +> Cela n'a pas fonctionné Les étapes 3,4,5 ont fonctionné ..
  3. Mis à jour mon Java version 64 bits 8.xx (dernière disponible))
  4. install.packages (rJava) ==> Succès
  5. install.packages (RWeka) ==> Succès
3
user2162611

Je reçois cette erreur à chaque fois Java faufile une mise à jour sur mon PC. Quand je vais:

Sys.getenv("Path")

Je trouve quelque chose dans la sortie qui ressemble à

C:\\Program Files \\Java\\jre1.8.0_112\\bin\\server\\

où les derniers chiffres du sous-dossier jre sont périmés.

Pour résoudre ce problème partout, vous pouvez modifier la variable d’environnement Windows. Faites ceci en allant sur la touche WINDOWS + X , en sélectionnant Invite de commande (Admin) dans le menu et en tapant

rundll32.exe sysdm.cpl,EditEnvironmentVariables

dans la boîte de commande. Ceci appellera cette boîte de dialogue avec les droits d'édition pour la variable PATH (et d'autres variables système):

enter image description here

L'interface Windows pour l'édition de variables d'environnement longues est un peu lourde, donc après avoir cliqué sur Modifier ... , j'aime bien copier-coller le fouillis de chemins résultant to Notepad.exe, faites le travail ici et copiez-collez en arrière.

3
lebelinoz

Avait le même problème:

J'utilisais 64-bit R Vous pouvez vérifier quelle version en fermant et en rouvrant RStudio. Il devrait être au sommet.

J'avais 32-bit Java installé = Java se trouvait dans C:\Program Files (x86). _.

Je suis simplement allé sur Java.com et j'ai téléchargé le 64-bit Java Et ajouté son emplacement à la fin du PATH dans System variables Et je peux charger rJava maintenant. . (L'installation m'a demandé de me débarrasser de l'ancienne version, ce que j'ai fait)

2
Shery

C'est probablement le problème avec le paramètre avec le pointeur Java_HOME. Si vous n'avez pas JDK mais JRE, voici ce que vous devrez peut-être faire: Sys.setenv (Java_HOME = 'C:\Program Files\Java\jre1.8.0_161')

N'oubliez pas de changer les chiffres après "jre" en fonction de ce que vous avez sur votre ordinateur. Voici un lien qui explique la différence entre JDK et JRE.

1
Bowen Chen

Essayez de télécharger la version quotidienne de RStudio: http://dailies.rstudio.com

Cela a fonctionné pour moi au deuxième essai après avoir essayé tout le reste (mis à jour R, Rstudio, Java, réinstallé rJava un million de fois et suivi tous les conseils de stackoverflow).

Le conseil venait du RStudio forums d'assistance :

RStudio ne lit en effet pas certaines des informations de démarrage normalement fournies par R ici ...

Nous avons un correctif potentiel pour cela dans les dernières versions quotidiennes de RStudio - si vous le souhaitez, vous pouvez essayer de télécharger et de tester à partir de http://dailies.rstudio.com

0
havi