java r macos

java - No se puede cargar el paquete R xlsx en Mac OS 10.11



macos (4)

Puedo cargar los paquetes rJava y xlsxjars, pero aparece el mensaje "No se pudo cargar JVM" cuando ejecuto la biblioteca (xlsx). Debajo están mis detalles.

Versión del sistema operativo:

$ sw_vers ProductName: Mac OS X ProductVersion: 10.11 BuildVersion: 15A284

Versión de Java:

$ java -version java version "1.8.0_65" Java(TM) SE Runtime Environment (build 1.8.0_65-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

Ruta de Java:

$ which java /usr/bin/java

Inicio de Java:

$ /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home

Versión R:

$ R --version R version 3.2.3 (2015-12-10) -- "Wooden Christmas-Tree" Copyright (C) 2015 The R Foundation for Statistical Computing Platform: x86_64-apple-darwin13.4.0 (64-bit)

Cómo inicio R:

$ LD_LIBRARY_PATH=$(/usr/libexec/java_home)/jre/lib/server: open -a RStudio

Cargando los paquetes rJava y xlsxjars con éxito:

> library(rJava) > library(xlsxjars)

Intentando sin éxito cargar el paquete xlsx:

> library(xlsx) JavaVM: requested Java version ((null)) not available. Using Java at "" instead. JavaVM: Failed to load JVM: /bundle/Libraries/libserver.dylib JavaVM FATAL: Failed to load the jvm library. Error : .onLoad failed in loadNamespace() for ''xlsx'', details: call: .jinit() error: JNI_GetCreatedJavaVMs returned -1 Error: package or namespace load failed for ‘xlsx’

Configuración R:

Matts-MacBook-Pro:~ matt$ R CMD javareconf Java interpreter : /usr/bin/java Java version : 1.8.0_65 Java home path : /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre Java compiler : /usr/bin/javac Java headers gen.: /usr/bin/javah Java archive tool: /usr/bin/jar Non-system Java on OS X trying to compile and link a JNI program detected JNI cpp flags : -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/darwin detected JNI linker flags : -L$(JAVA_HOME)/lib/server -ljvm clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre/../include -I/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre/../include/darwin -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c conftest.c -o conftest.o clang -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o conftest.so conftest.o -L/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre/lib/server -ljvm -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation JAVA_HOME : /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre Java library path: $(JAVA_HOME)/lib/server JNI cpp flags : -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/darwin JNI linker flags : -L$(JAVA_HOME)/lib/server -ljvm Updating Java configuration in /Library/Frameworks/R.framework/Resources


Básicamente, solo haga lo que se describe aquí: https://oliverdowling.com.au/2015/10/09/oracles-jre-8-on-mac-os-x-el-capitan/

versión corta: d / l Java JRE de Oracle como archivo tar http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

luego ponga esto en su terminal (para sudo, se necesita su pw):

cd ~/Downloads tar -xzf `ls -1r jre-*-macosx-x64.tar.gz | head -1` cd `ls -1rd jre*/ | head -1` defaults write `pwd`/Contents/Info.plist JavaVM -dict-add ''JVMCapabilities'' ''<array><string>JNI</string><string>BundledApp</string><string>CommandLine</string></array>'' plutil -convert xml1 Contents/Info.plist sudo mv `pwd` /Library/Java/JavaVirtualMachines/ mkdir -p Contents/Home/bundle/Libraries cd Contents/Home/bundle/Libraries ln -s ../../lib/server/libjvm.dylib libserver.dylib

funciona bien en mi OS X 10.11


Desafortunadamente, estos trucos de enlaces simbólicos no me ayudaron. Sin embargo, ¡encontré un problema similar en ! (donde más;)) Este funcionó para mí haciendo lo siguiente:

  1. En la terminal, ingrese lo siguiente para volver a vincular Java correctamente:

    sudo R CMD javareconf

  2. De vuelta en R (o RStudio) instale el paquete rJava desde la fuente:

    install.packages("rJava",type=''source'')

¡Espero que esto ayude!


Puede haber un problema en la versión de Java para la que se incorporó el paquete R xlsx. Algunos programas antiguos requieren la instalación de Java 6 para OS X 10.11 El Capitan, OS X 10.10 Yosemite, OS X 10.9 Mavericks, OS X 10.8 Mountain Lion y OS X 10.7 Lion. Por lo tanto, puede intentar instalar esta versión anterior de Java (Java para OS X 2015-001) en el sitio web de Apple, enlace a continuación: https://support.apple.com/kb/DL1572?locale=pt_BR&viewlocale=en_US

Y compruebe si tiene un Java SE Development Kit 8. Puede descargarlo en el sitio web de Oracle, enlace a continuación: www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Estaba teniendo el mismo problema y la descarga de la versión anterior de Java lo resolvió. ¡Espero que esto te ayude!


También tengo problemas con la carga de paquetes como openNLP, xlsx, RWeka, ... y recibí el mismo mensaje de error que tú. Pero finalmente este comando funcionó para mí en OS X 10.11.3: sudo ln -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib