2010-03-08 19 views
9

Ho lottato per caricare il pacchetto Rjava in R.Impossibile caricare Rjava perché non può caricare una libreria condivisa

ottengo i seguenti messaggi di

> library(rJava) 
Error in inDL(x, as.logical(local), as.logical(now), ...) : 
    unable to load shared library \ 
    'C:/PROGRA~1/R/R-210~1.1/library/rJava/libs/rJava.dll': 
    LoadLibrary failure: The specified module could not be found. 


Error : .onLoad failed in 'loadNamespace' for 'rJava' 
Error: package/namespace load failed for 'rJava' 

ho provato tante soluzioni che sono tutti bamboozeled nella mia testa. Ad un certo punto ho anche avuto

> R Console: Rgui.exe - System Error The 
> program can't start because 
> MSVCR71.dll is is missing from your 
> computer. Try reinstalling the program 
> to fix this problem. 

ho fatto in modo tutto quello che potevo pensare era sul percorso

> C:\Program Files\R\Rtools\bin;C:\Program Files\R\Rtools\perl\bin; 
    C:\Program Files\R\Rtools\MinGW\bin;%SystemRoot%\system32; 
    %SystemRoot%;%SystemRoot%\System32\Wbem; 
    %SYSTEMROOT%\System32\WindowsPowerShell\v1.0\; 
    C:\Program Files\QuickTime\QTSystem\; 
    C:\Program Files\R\R-2.10.1\library\rJava\libs\; 
    C:\Program Files\R;C:\Program Files\Java\jre6\bin\client 

Cosa devo provare dopo?

Sono in esecuzione R versione 2.10.1 (2009-12-14) e ho anche provato R versione 2.10.1 Patched (2010-03-03 r51210). È su una macchina Windows che esegue Windows 7 Enterprise

+0

Avete un Java Run-Time Environment (JRE) o anche un Java SDK sul vostro sistema? –

+0

Ad un certo punto (ma relativamente presto) sono andato su http://www.java.com/en/ e scaricato java da lì. Sono tornato a quel sito web ora e ho usato il loro test Java e ho ricevuto la seguente iformation: Fornitore: Sun Microsystems Inc. Versione: Java 6 Aggiornamento 18 Sistema operativo: Windows 7 6.1 Architettura: x86. Il programma sembra essere seduto in C: \ Programmi \ Java \ jre6. Non so davvero come funzionano i percorsi.Bisogna specificare fino alla sottodirectory attuale o posso semplicemente indicare la vicinanza generale e il software saprà di guardare nelle sottodirectory. Grazie per aver riformattato il mio post. – Farrel

+0

L'installazione corretta di un dato componente, di solito, si occupa della regolazione del PERCORSO, ad es. questo è ciò che fa R. Il testo di rJava che ho citato parla di come ottenere informazioni Java dal registro, quindi presumo che qualcosa venga inserito nella tua casella. –

risposta

4

seguito su alcune delle saggi consigli di Dirk:

  • Il percorso probabilmente dovrebbe dire C:\Program Files\Java\jre6\bin\ (togliere "client").
  • Il percorso deve anche avere C:\Program Files\R\R-2.10.1\bin\.Non hai bisogno di questo riferimento esplicito alle librerie rJava. Vorrei anche rimuovere C:\Program Files\R dal percorso.
  • Infine, verificare che Java sia accessibile dal prompt dei comandi e digitando java -version o da R digitando system("java -version").
  • Se si installa l'SDK, quindi si vorrà anche una variabile di sistema JAVA_HOME che nel mio caso punta a C:\Sun\SDK\.
+0

Sono occupato a esaminare i tuoi suggerimenti. Ti darò un feedback quando vedrò se funziona o meno. – Farrel

+0

Ha funzionato. Grazie. – Farrel

3

Dopo aver modificato il tuo post per leggere/formattare sembra che tu non abbia un sistema Java nel tuo percorso. Non utilizzo il sistema operativo su cui si sta tentando di utilizzarlo, ma sul mio rJava funziona solo se installo anche un ambiente run-time Java o, meglio ancora, un Java SDK.

Nota che il pacchetto elenca chiaramente

SystemRequirements: java 

e che il rJava site afferma chiaramente il seguente

installazione

In primo luogo, assicurarsi di aver JDK 1.4 o superiore installato (alcune piattaforme richiedono una versione più difficile vedere R Wiki). Sui sistemi unix assicurarsi che R sia stato configurato con il supporto Java. In caso contrario , si può riconfigurare R utilizzando R CMD javareconf (potrebbe essere necessario anteporre sudo o eseguirlo come root seconda dell'installazione - vedi A.2.2 manuale R-ext per i dettagli). Su Windows Java viene rilevato dal run-time dal registro.

rJava può essere installato come qualsiasi altro pacchetto R da CRAN utilizzando install.packages ('rJava'). Vedere la sezione file nel menu a sinistra per le versioni di sviluppo .

JRI viene compilato solo se supportato, , ad esempio se R è stato configurato come quadro o con --enable-R-shlib.

quindi penso che abbiamo alcune pistole fumanti che puntano allo stesso modo.

+0

Ho aggiunto una modifica alla mia domanda originale. – Farrel

1

ho avuto un errore simile e ha dovuto fare una correzione ulteriore: Impostazione del percorso R esplicitamente ... bin \ x64, e anche di essere coerente nell'uso x64 Java e R.

11

Se si dispone di leggere questa minaccia e nessuno dei suggerimenti di cui sopra ha funzionato finora, allora potrebbe essere la pena di provare un ulteriore:

  • Windows 7
  • versione R 2.12.1 (2010-12-16) a 64 bit
  • Jav una (TM) SE Runtime Environment (build 1.6.0_23-b05), Java HotSpot (TM) a 64 bit di server VM (build 19,0-B09, modalità mista)

    JAVA_HOME=C:\Program Files\Java\jre6\bin\

    Path= ...;C:\Program Files\Java\jre6\bin\server\;C:\Program Files\R\R-2.12.1\bin\x64\

La cosa che finalmente ha risolto il mio problema è stata quella di aggiungere esplicitamente \server\ alla variabile PATH.

+1

Lo stesso qui, '\ server \' era necessario. Il modo in cui ho scoperto è stato eseguire 'library (" rJava ")' da GUI R, che manca jvm.dll stampato. Emacs stampa un messaggio di errore completamente diverso. Dopo aver aggiunto '\ server \' al percorso, entrambe le versioni emacs/ess e gui hanno funzionato bene. – user443854

+1

Posso concordare. Grazie per aver inserito questa risposta qui. –

3

Per quello che vale, il mio PATH ha funzionato per me. Sembra che il modulo rJava possa trovare jvm.dll lì.

Ecco le versioni di R e Java che sto utilizzando (su Windows 7 64 bit).

Java:

java version "1.6.0_30" 
Java(TM) SE Runtime Environment (build 1.6.0_30-b12) 
Java HotSpot(TM) 64-Bit Server VM (build 20.5-b03, mixed mode) 

R:

R version 2.14.1 (2011-12-22) 
Copyright (C) 2011 The R Foundation for Statistical Computing 
ISBN 3-900051-07-0 
Platform: x86_64-pc-mingw32/x64 (64-bit) 
3

Informazioni di sistema: versione R 3.0.1 (2013/05/16) Piattaforma: x86_64-W64-mingw32/x64 (64 -bit)

Ho riscontrato questo stesso problema. Sono stato in grado di risolvere il problema con una riga di codice nella finestra di comando ottenuta da questo website.

Sys.setenv (JAVA_HOME = 'C: \ Program Files \ Java \ jre7')

Nota che ho usato questa linea particolare perché ero in un sistema a 64 bit. Vedi il sito Web per l'esempio a 32 bit.

Problemi correlati