简体   繁体   中英

Unable to install xlsx package in Rstudio

I tried installing xlsx package in R.

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’

Then I ran the library function too

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.

I read online about how some rjava packages need to be installed as well so I tried to

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

To ensure grepl("rJava",installed.packages()) Again I got "FALSE" 649 times.

I recently had a similar problem with another package and have had loads of headaches with R and Java integration. My understanding is that you have to install Java for each architecture you're using. If R is trying to install xlsx for both architectures and you've only got the 64-bit java installed, it would cause a failure like the one you got. You could try:

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

This would keep it from trying to install the xlsx for the 32-bit architecture.

I had the same problem a few months ago. In my case, the solution was installing both versions of java (32-bit and 64-bit architecture). On windows 10 the 32-bit architecture should be installed on path ./programfiles (x86)/... and the 64-bit architecture should be installed on ./programfiles/... Both java installer can be found on the official web page.

After installing both architectures of java, it is necessary to make sure that JAVA HOME environtment is declared as empty string. Sys.getenv("JAVA HOME") = "".

This steps works for me. I hope that my solution works for you.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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