Ich versuche, das rJava-Paket unter Verwendung dieses Codes auf R auf meinem 14.10-Ubuntu zu installieren
if (!require(rJava)) install.packages('rJava')
Nach der Neuinstallation von jdk und dem Versuch, denselben Code erneut auszuführen, sind nur wenige Fehler im Zusammenhang mit Java aufgetreten, einschließlich jni-Problemen. Dieser Fehler ist aufgetreten
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/usr/local/lib/R/site-library/rJava/libs/rJava.so':
libjvm.so: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/usr/local/lib/R/site-library/rJava’
Warning in install.packages :
installation of package ‘rJava’ had non-zero exit status
The downloaded source packages are in
‘/tmp/RtmpfFjrp0/downloaded_packages’
Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
there is no package called ‘rJava’
suchte nach Lösungen, um fast jeden zu finden, der (für x64) vorschlägt, diese Befehle auszuführen
export LD_LIBRARY_PATH=/usr/lib/jvm/java-8-oracle/lib/amd64:/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server
sudo R CMD javareconf
Aber das hat nicht funktioniert. Kann ich noch etwas tun? Ich werde alle erforderlichen Details bereitstellen, und die Suche nach libjvm.so auf dem gesamten Computer führte dazu
/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server/libjvm.so
/usr/lib/jvm/jdk1.8.25/jre/lib/amd64/server/libjvm.so
/usr/local/java/jre1.7.0_75/lib/amd64/server/libjvm.so
Antworten:
Das Ausführen der folgenden Schritte sollte Ihr Problem lösen:
quelle
LD_LIBRARY_PATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/server/
.Manchmal brauchst du das
R CMD javareconf -e
Siehe https://stackoverflow.com/a/13446026/2803344
quelle
Schritte:
Finden Sie Ihren R-Standort. Es wird
rsession-ld-library-path
in einerrserver.conf
Datei gespeichert . Oder einfach nur tunwhich R
. Der Standort ist normalerweise/usr/lib64/R/lib
oder/usr/lib64/microsoft-r/3.3/lib64/R/lib
Suchen Sie die
libjvm.so
Datei, die sich normalerweise imusr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server
Pfad befindet, je nachdem, welchen JRE Sie verwenden. Überprüfen Sieecho $JAVA_HOME
.Erstellen Sie einen Symlink mit
ln -s
sudo ln -s /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/libjvm.so /usr/lib64/microsoft-r/3.3/lib64/R/lib/libjvm.so
Starten Sie den R-Server neu
quelle