Большое спасибо за этот ответ. Я попробовал несколько SO сообщений, и это работает для macOS High Sierra. Конечно, мне пришлось изменить jdk-10.jdk. Спасибо @ Винай-Карагод
ользую R (версия 3.4.0) в macOS sierra (10.12.5) и пытаюсь использовать библиотеку xlsx, которая требует использования библиотеки rJava.
Когда я пытаюсь загрузить rJava, используяlibrary(rJava)
в консоли R (без разницы, если в RStudio или в терминале) я получаю следующее сообщение об ошибке, из-за которого у меня возникают проблемы с пониманием:
Fehler: package or namespace load failed for ‘rJava’:
.onLoad in loadNamespace() für 'rJava' fehlgeschlagen, Details:
Aufruf: dyn.load(file, DLLpath = DLLpath, ...)
Fehler: kann shared object '/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so' nicht laden:
dlopen(/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: @rpath/libjvm.dylib
Referenced from: /Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so
Reason: image not found
Погуглив проблему, я обнаружил несколько постов на несколько похожих (но каждый раз немного разных проблем),этот ТАК вопрос быть самым многообещающим среди них.
Поскольку предложенные шаги требуют адаптации к моему делу, а я новичок, я не смог их реализовать. Что я могу сделать?
Дополнительная информация:
Команда оболочкиjava -version
возвращает:
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
И команда оболочкиR CMD javareconf
возвращает:
Java interpreter : /usr/bin/java
Java version : 1.8.0_131
Java home path : /Library/Java/JavaVirtualMachines/jdk1.8.0_131.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 macOS
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_131.jdk/Contents/Home/jre/../include -I/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre/../include/darwin -I/usr/local/include -fPIC -Wall -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_131.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_131.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
Done.
Любая помощь будет оценена!