繁体   English   中英

无法在Rstudio中安装xlsx软件包

[英]Unable to install xlsx package in Rstudio

我尝试在R中安装xlsx软件包。

install.packages("xlsx") 

installing *source* package 'xlsx' ...
** package 'xlsx' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
*** arch - i386
Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: fun(libname, pkgname)
  error: No CurrentVersion entry in Software/JavaSoft registry! Try re-installing Java and make sure R and Java have matching architectures.
Error: loading failed
Execution halted
*** arch - x64
ERROR: loading failed for 'i386'
* removing 'C:/Users/hi/Documents/R/win-library/3.3/xlsx'
Warning in install.packages :
  running command '"C:/PROGRA~1/R/R-33~1.2/bin/x64/R" CMD INSTALL -l "C:\Users\hi\Documents\R\win-library\3.3" C:\Users\hi\AppData\Local\Temp\RtmpSGp15V/downloaded_packages/xlsx_0.6.1.tar.gz' had status 1
Warning in install.packages :
  installation of package ‘xlsx’ had non-zero exit status

The downloaded source packages are in
    ‘C:\Users\hi\AppData\Local\Temp\RtmpSGp15V\downloaded_packages’

然后我也运行了库函数

library(xlsx)

Error in library(xlsx) : there is no package called ‘xlsx’

To ensure that whether the package has been installed itself or not I ran

grepl("xlsx",installed.packages())
# It returns "FALSE" 649 times in a row.

我在线阅读了有关如何也需要安装一些rjava软件包的信息,因此我尝试

install.packages('rJava')
install.packages("xlsxjars")

package ‘rJava’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\hi\AppData\Local\Temp\RtmpSGp15V\downloaded_packages

为了确保grepl(“ rJava”,installed.packages())再次获得649次“假”。

我最近在另一个软件包中遇到了类似的问题,并且对R和Java集成感到头疼。 我的理解是,必须为要使用的每种体系结构安装Java。 如果R尝试为两种体系结构都安装xlsx ,而您只安装了64位Java,则将导致失败,就像您得到的那样。 您可以尝试:

install.packages("xlsx", INSTALL_opts=c("--no-multiarch"))

这样可以避免尝试为32位体系结构安装xlsx

几个月前我遇到了同样的问题。 就我而言,解决方案是安装两个版本的Java(32位和64位体系结构)。 在Windows 10上,应将32位体系结构安装在路径./programfiles(x86)/ ...上,并将64位体系结构安装在./programfiles / ...上。两种java安装程序都可以在官方网站上找到。页。

安装完两种Java体系结构之后,必须确保将JAVA HOME环境声明为空字符串。 Sys.getenv(“ JAVA HOME”)=“”。

这一步对我有用。 希望我的解决方案对您有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM