R加载和java相关的包报错解决

一直想把这个问题解决,奈何总是浅尝辄止,于是我发4,一定要在今天抽时间把R软件加载和java相关的包总是报错的问题给解决,并且还写上了我的schedule。现在我把解决的过程写在下面,如果你也碰到类似的问题,也可以参考下我的解决方案

报错来源

  1. 举个例子,当我加载xlsxR语言包是,给我的报错是这样的:
#install.packages("xlsx")
library(xlsx)
# Error: package or namespace load failed for ‘rJava’:
# loadNamespace()里算'rJava'时.onLoad失败了,详细内容:
# 调用: fun(libname, pkgname)
# 错误: JAVA_HOME cannot be determined from the Registry
  1. 网上查了一些资料,说是windows没有安装java程序,或者安装的java版本和计算机版本不一致,比如你的计算机是64位系统,安装的java却是32位;再可能就是没有为java配置环境变量,R运行加载包是无法找到java在windows的具体位置。好,既然知道问题出在哪里了,就好办了。

解决问题

  1. 因为我的电脑是64位系统,而且我查找了下我的电脑,居然没有装java,好吧,其实是我重装系统后留下的bug。没办法,重新来过咯,我从这里下载对应电脑的64位的java软件。我选择的是这个(下图画红色方框的
图一

2.第二步就是在windows里安装,一路默认就可以,当然你也可以设置自己需要安装到的文件夹。

3.安装结束后,就是对java进行环境变量的配置,这里我想用图片的形式进行一步步的展示,因为更加直观。

  • 第一步,右键我的电脑,选择属性


    第一步
  • 第二步,点击高级系统设置


    第二步
  • 第三步,依次点击高级和环境变量选项


    第三步
  • 第四步,在系统变量部分,新建两个变量,JAVA_HOMECLASSPATH

    第四步

4.1:JAVA变量下的变量值填入的是你的java的安装路径,比如我的是C:\Program Files\Java\jre1.8.0_201

JAVA_HOME

4.2:CLASSPATH变量值填的是.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

CLASSPATH

:好像不要CLASSPATH变量也可以工作,亲测有效

  • 第五步,选择系统变量里Path变量
    选择Path变量

5.1:在Path中新增变量%JAVA_HOME%\bin后,点击确定

新增Path变量

  • 第六步,选择Administrator的用户变量里的Path变量
    Administrator的用户变量里的Path变量

6.1:同上面的步骤一样,在Path中新增变%JAVA_HOME%\bin后,点击确定

新增Path变量

依次点击确定,保存新增和改变的变量

  • 第七步,检验java是否能正常运行,win+R快捷键打开运行程序窗口,并输入cmd后点击确定


    打开运行窗口

7.1:进入如下界面


进入cmd运行窗口

7.2:在命令行输入java后,得到如下界面,表示java安装和配置成功

输入java后界面

  • 第八步,回到Rstudio界面(这步可能需要重启Rstudio),在命令行键入library(xlsx)后,加载成功
    无报错,成功加载

PS:小伙伴们赶紧试一试吧!

你可能感兴趣的:(R加载和java相关的包报错解决)