java - error: no se pueden cargar los paquetes instalados ahora
eclipse ubuntu (11)
Cuando intenté ejecutar la consola R en Eclipse, obtuve este error:
....Please make sure that R package ''rj'' (1.1 or compatible) is installed...
Así que traté de instalarlo en la consola R de esta manera:
install.packages(c("rj", "rj.gd"), repos="http://download.walware.de/rj-1.1")
y obtuve este error:
** testing if installed package can be loaded
Error : .onLoad failed in loadNamespace() for ''rj.gd'', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object ''/home/alex/R/x86_64-pc-linux-gnu-library/2.15/rj.gd/libs/rj.gd.so'':
libjvm.so: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
y descubrí que al instalar rJava con: install.packages("rJava")
obtiene un error similar:
** testing if installed package can be loaded
Error : .onLoad failed in loadNamespace() for ''rJava'', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object ''/home/alex/R/x86_64-pc-linux-gnu-library/2.15/rJava/libs/rJava.so'':
libjvm.so: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
Cuando ejecuto sudo R CMD javareconf
, obtuve este resultado:
Java interpreter : /usr/bin/java
Java version : 1.7.0
Java home path : /usr/lib/jvm/java-7-oracle/jre
Java compiler : /usr/bin/javac
Java headers gen.: /usr/bin/javah
Java archive tool: /usr/bin/jar
NOTE: Your JVM has a bogus java.library.path system property!
Trying a heuristic via sun.boot.library.path to find jvm library...
Java library path: $(JAVA_HOME)/lib/amd64:$(JAVA_HOME)/lib/amd64/server
JNI linker flags : -L$(JAVA_HOME)/lib/amd64 -L$(JAVA_HOME)/lib/amd64/server -ljvm
JNI cpp flags : -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/linux
Updating Java configuration in /etc/R
Done.
por cierto, mi configuración es:
Ubuntu 11.10 64bit
Eclipse 3.7
Oracle-1.7-jdk
R version 2.15.1
Años después, terminé con esta pregunta después de buscar un error informado por R después de haber instalado un paquete sin éxito en ese cambio requerido a Java de Oracle.
Todo lo que tuve que hacer para arreglarlo fue:
$ sudo R CMD javareconf
Al enfrentar los errores de limjvm.so
faltan, asegúrese de que los ldpaths
correctos se seleccionen de la configuración estándar en /etc/R
comparación con la de /usr/lib/R/etc
Encontré la solución:
export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-oracle/lib/amd64:/usr/lib/jvm/java-7-oracle/jre/lib/amd64/server
entonces
sudo R CMD javareconf
Nota: La ruta (java-7-oracle) necesita actualizarse en función de su instalación de Java.
Esto soluciona el problema LD_LIBRARY_PATH para mí (Linux, Debian 7.1.0, tc-shell, R versión 3.0.2):
Agregue esta línea a .cshrc:
setenv LD_LIBRARY_PATH $ JAVA_HOME / jre / lib / amd64: $ JAVA_HOME / jre / lib / amd64 / server
Agregar este comando a ~ / .login no fue suficiente; la variable de entorno LD_LIBRARY_PATH todavía no se conocía en los nuevos xterms: echo $ LD_LIBRARY_PATH: LD_LIBRARY_PATH: variable no definida. (¿¿Por qué??)
Curiosamente, al iniciar R como superusuario, no había ningún problema para encontrar libjvm.so.
Hice lo siguiente y funcionó para mí:
export LD_LIBRARY_PATH=$JAVA_LD_LIBRARY_PATH
sudo R CMD javareconf
Tuve que reiniciar R también.
Lo arreglé simplemente ejecutando R con sudo, y luego ejecutando install.packages(''rJava`)
.
Ninguno de los anteriores funcionó para mí, la única solución que instaló rJava
en Linux Ubuntu sin ningún problema fue pasar el comando RScript
después de la instalación de la base R:
$ sudo Rscript -e ''install.packages("rJava", repos = "http://cran.r-project.org/")''
No tenía instalado el jdk que podía arreglar con sudo apt-get install jdk-*
Después de eso podía ejecutar el sudo R CMD javareconf
que siempre dibujaba un mensaje de error antes. Todo se configuró correctamente y no hubo modificaciones manuales cuando fue necesario, y después de eso, la instalación del paquete se ejecutó con suavidad en R (se requiere reiniciar).
Para usuarios de Linux (Ubuntu): si tiene instalado oracle-java (7/8) . Será en esta ubicación /usr/lib/jvm
y se requiere acceso sudo
.
Cree el archivo /etc/ld.so.conf.d/java.conf
con las siguientes entradas:
/usr/lib/jvm/java-8-oracle/jre/lib/amd64
/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server
(Reemplace java-8-oracle con java-7-oracle dependiendo de su versión java)
Entonces:
sudo ldconfig
Reinicie RStudio y luego instale el paquete rJava.
O
También un método alternativo es exportar LD_LIBRARY_PATH
con el valor de la ruta de la biblioteca Java obtenida del comando R CMD javareconf -e
y ejecutar install.packages
Tengo un problema similar y pude resolverlo ejecutando
R CMD javareconf -e
Salida de la R CMD javareconf -e
Java interpreter : /export/apps/jdk/JDK-1_6_0_27/jre/bin/java
Java version : 1.6.0_27
Java home path : /export/apps/jdk/JDK-1_6_0_27
Java compiler : /export/apps/jdk/JDK-1_6_0_27/bin/javac
Java headers gen.: /export/apps/jdk/JDK-1_6_0_27/bin/javah
Java archive tool: /export/apps/jdk/JDK-1_6_0_27/bin/jar
Java library path: /export/apps/jdk/JDK-1_6_0_27/jre/lib/amd64/server:/export/apps/jdk/JDK-1_6_0_27/jre/lib/amd64:/export/apps/jdk/JDK-1_6_0_27/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
JNI linker flags : -L/export/apps/jdk/JDK-1_6_0_27/jre/lib/amd64/server -L/export/apps/jdk/JDK-1_6_0_27/jre/lib/amd64 -L/export/apps/jdk/JDK-1_6_0_27/jre/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib64 -L/lib64 -L/lib -L/usr/lib -ljvm
JNI cpp flags : -I/export/apps/jdk/JDK-1_6_0_27/include -I/export/apps/jdk/JDK-1_6_0_27/include/linux
The following Java variables have been exported:
JAVA_HOME JAVA JAVAC JAVAH JAR JAVA_LIBS JAVA_CPPFLAGS JAVA_LD_LIBRARY_PATH
Running: /bin/bash
Después de establecer LD_LIBRARY_PATH en el mismo valor que JAVA_LD_LIBRARY_PATH, como se muestra en la salida anterior. Pude instalar rj.
export LD_LIBRARY_PATH=/export/apps/jdk/JDK-1_6_0_27/jre/lib/amd64/server:/export/apps/jdk/JDK-1_6_0_27/jre/lib/amd64:/export/apps/jdk/JDK-1_6_0_27/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
Ejecuta R y luego instala rj por
install.packages(c("rj", "rj.gd"), repos="http://download.walware.de/rj-1.1")
o simplemente configura la biblioteca en R?
Acabo de ejecutar este comando en R:
Sys.setenv(JAVA_HOME=''/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server'')
(reemplace "/ usr / lib / jvm / java-7-openjdk-amd64 / jre / lib / amd64 / server" con la ruta de su biblioteca Java que se puede encontrar ejecutando "sudo R CMD javareconf")
Puede que no sea la solución más elegante, ¡pero funcionó para mí!