• 软件
  • 求助下载 rJava 包出错问题

install.packages('rJava') 显示:

Installing package into ‘C:/Users/name/R library’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/bin/windows/contrib/3.4/rJava_0.9-8.zip'
Content type 'application/zip' length 716884 bytes (700 KB)
downloaded 700 KB

运行library(rJava) 显示错误:

Error: package or namespace load failed for ‘rJava’ in get(Info[i, 1], envir = env):
 lazy-load database 'C:/Users/name/R library/rJava/R/rJava.rdb' is corrupt
In addition: Warning message:
In get(Info[i, 1], envir = env) : internal error -3 in R_decompress1

R是最新的3.4版本,Java也下载了64bit版本,看到有 帖子 (https://stackoverflow.com/questions/26806776/r-project-xlsx-package-installation-failure-due-to-java-issues) 让在commandline改变Java的配置,输入后显示:
C:\Users\name>sudo R CMD javareconf
'sudo' is not recognized as an internal or external command,
operable program or batch file.

请问哪里出错了?谢谢!

    angela9855 sudo 是类 Linux 系统下的命令。Windows 下直接打 R CMD javareconf,当然前提是 R 在你的系统路径中。

      Ihavenothing 如果 R 不在系统路径(PATH 环境变量)中,也可以直接在 R 里面运行 R 命令行:

      system("R CMD javareconf")

      这个不依赖 PATH。不过我有点怀疑 R CMD javareconf 能不能修正这个问题,因为这个错误消息貌似并不是说 Java有问题,而是这个包的安装本身就有问题。建议重启 R,再重新安装一遍 rJava。

      angela9855 请检查以下几项:
      1. Java的JDK环境是否配置好
      2. 安装R包的路径不要有空格,如 C:/Users/name/R library
      3. 如果以上两项都没问题,建议从源码安装,这样暴露的错误会比较清楚

      看看在R控制台能否得到类似如下结果

      > system("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)
      > system("javac -version")
      javac 1.8.0_131