noHup - rjava
type: channel
link: http://www.nohup.cc/tag/rjava/
items: Mac下R语言导入xlsx包报错的解决方案

Mac下R语言导入xlsx包报错的解决方案
type: item
date: 2017-03-14T09:53:00+00:00
description: Overview问题描述配置环境解决方法一点小问题参考网址 Overview 最近把系统更新到了最新版本(10.12.3)，又安装了一个新的语言Julia，再使用R的时候，发现命令行已经不能通过R命令进入了，连*.R文件都不再能被R语言关联了。具体原因未知，于是先下了一个最新的R-3.3.3，顺带删了Julia，所有的library都要重新安装，结果安装好xlsx后导入的时候报了错。 各种解决方法都尝试了，还是不行。考虑到可能是R的版本太新了，就把R-3.3.3卸载了，重新装了一个R-3.2.3版本，依然存在同样的问题，又过了一遍解决方法，解决了。 问题描述 > library("xlsx") 载入需要的程辑包：xlsxjars 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 : loadNamespace()里算'xlsx'时.onLoad失败了，详细内容： 调用: .jinit() 错误: JNI_GetCreatedJavaVMs returned -1 错误: ‘xlsx’程辑包或名字空间载入失败， 实际上，载入xlsx需要载入rJava和xlsxjars两个包，单独载入rJava和xlsxjars时都不会报错，只有载入xlsx时才会报错。 配置环境 用下面的命令查看自己的配置环境： 操作系统版本： > sw_vers ProductName: Mac OS X ProductVersion: 10.12.3 BuildVersion: 16D32 Java版本： > java -version java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode) Java路径： > which java /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/java JAVA HOME： > /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home 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) R 配置情况： >sudo R CMD javareconf Java interpreter : /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/java Java version : 1.8.0_25 Java home path : /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre Java compiler : /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/javac Java headers gen.: /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/javah Java archive tool: /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/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/d…