No se puede instalar rJava en R 3.0 en Ubuntu 13.04


No puedo llamar a rJava paquete en R 3.0. Recibí el siguiente mensaje

Error: package ‘rJava’ was built before R 3.0.0: please re-install it

Estoy recibiendo un error cuando intenté reinstalar el paquete rJava. He proporcionado la salida de R CMD javareconf

Java interpreter : /usr/bin/java
Java version     : 1.7.0_21
Java home path   : /usr/lib/jvm/java-7-openjdk-i386/jre
Java compiler    : /usr/lib/jvm/java-7-openjdk-i386/jre/../bin/javac
Java headers gen.: /usr/lib/jvm/java-7-openjdk-i386/jre/../bin/javah
Java archive tool: /usr/lib/jvm/java-7-openjdk-i386/jre/../bin/jar

trying to compile and link a JNI progam 
detected JNI cpp flags    : 
detected JNI linker flags : 
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG      -fpic  -O2 -pipe -g  -c conftest.c -o conftest.o
conftest.c:1:17: fatal error: jni.h: No such file or directory
compilation terminated.
make: *** [conftest.o] Error 1
Unable to compile a JNI program


Java library path: 
JNI cpp flags    : 
JNI linker flags : 
Updating Java configuration in /usr/lib/R
Done.

Estoy usando Ubuntu 13.04. También he intentado apt-get install r-cran-rjava que no está ayudando a resolver el problema. Con respecto al jni.h había alguna solución aquí. Pero, no estoy seguro de cómo puedo usar la solución aquí.

Author: Community, 2013-05-08

3 answers

Me encontré exactamente con el mismo problema. Mi solución fue instalar el openjdk-7 - * vía

sudo apt-get install openjdk-7-*

Seguido de

sudo R CMD javareconf

Y luego pude instalar rJava en R a través de install.packages("rJava").

Aunque quizás no sea la solución más elegante, parece haber resuelto mis problemas con conseguir que rJava trabajara.

 75
Author: Peter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-09 02:30:57

Para aquellos que reciben el error:

error: unable to load shared object '/some/dir/rJava/libs/rJava.so': libjvm.so: 
cannot open shared object file: No such file or directory

Resolví el error ubicando la biblioteca en el sistema y enlazándola a /usr/lib:

$sudo updatedb
$locate libjvm.so
/usr/lib/debug/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so
/usr/lib/debug/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/zero/libjvm.so
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/jamvm/libjvm.so
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/zero/libjvm.so
$sudo ln -s /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so /usr/lib/ 
 27
Author: kahlo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-02-01 22:12:34

Instalar rJava desde los paquetes de distribución como se propone en esta respuesta de AskUbuntu {[3] } también funciona:

sudo apt-get install r-cran-rjava

NOTA: probado desde un sistema Debian.

 1
Author: atfornes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-29 21:10:03