R 错误:“rJava”的 loadNamespace() 中的 .onLoad 失败

时间:2021-02-27 19:56:18

标签: r rjava

我刚刚更新到 R v4.0.4(从 v4.0.2)。我正在尝试构建/安装一个使用 v4.0.2 的自定义包。当我尝试检查包是否有错误时发生错误:

> devtools::check(pkg_path)
E  checking whether package 'JTools' can be installed (5s)
   Installation failed.
   See 'C:/Users/JT/AppData/Local/Temp/RtmpghupHy/JTools.Rcheck/00install.out' for details.
   
   See
     'C:/Users/JT/AppData/Local/Temp/RtmpghupHy/JTools.Rcheck/00check.log'
   for details.
   
-- R CMD check results ------------------------------- JTools 0.0.0.9000 ----
Duration: 8.8s

> checking whether package 'JTools' can be installed ... ERROR
  See below...

-- Install failure ----------------------------------------------------------

* installing *source* package 'JTools' ...
** using staged installation
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
*** arch - i386
Error: package or namespace load failed for 'JTools':
 .onLoad failed in loadNamespace() for 'rJava', details:
  call: inDL(x, as.logical(local), as.logical(now), ...)
  error: unable to load shared object 'C:/Users/JT/Documents/R/win-library/4.0/rJava/libs/i386/rJava.dll':
  LoadLibrary failure:  %1 is not a valid Win32 application.

Error: loading failed
Execution halted
*** arch - x64
ERROR: loading failed for 'i386'
* removing 'C:/Users/JT/AppData/Local/Temp/RtmpghupHy/JTools.Rcheck/JTools'

1 error x | 0 warnings √ | 0 notes √

基于 this post,我尝试使用 these instructions 重新安装 Java 64,但继续遇到相同的错误。我也试过用这两个路径设置 te JAVA_HOME 变量,也无济于事:

Sys.setenv(JAVA_HOME="C:/Program Files/Java/jre1.8.0_281")
Sys.setenv(JAVA_HOME="C:/Program Files/Java/jdk-15.0.2")

这是我的系统信息:

> sessionInfo()
R version 4.0.4 (2021-02-15)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

Matrix products: default

locale:
[1] LC_COLLATE=English_United States.1252 
[2] LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] devtools_2.3.2      usethis_2.0.1       BiocManager_1.30.10
[4] mailR_0.4.1         magrittr_2.0.1     

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.6        compiler_4.0.4    pillar_1.5.0      prettyunits_1.1.1
 [5] R.methodsS3_1.8.1 R.utils_2.10.1    remotes_2.2.0     tools_4.0.4      
 [9] digest_0.6.27     testthat_3.0.2    pkgbuild_1.2.0    pkgload_1.1.0    
[13] memoise_2.0.0     lifecycle_1.0.0   tibble_3.0.6      pkgconfig_2.0.3  
[17] rlang_0.4.10      rstudioapi_0.13   cli_2.3.1         commonmark_1.7   
[21] xopen_1.0.0       xfun_0.21         fastmap_1.1.0     rJava_0.9-13     
[25] xml2_1.3.2        knitr_1.31        roxygen2_7.1.1    withr_2.4.1      
[29] stringr_1.4.0     desc_1.2.0        fs_1.5.0          vctrs_0.3.6      
[33] rprojroot_2.0.2   glue_1.4.2        R6_2.5.0          processx_3.4.5   
[37] fansi_0.4.2       rcmdcheck_1.3.3   sessioninfo_1.1.1 callr_3.5.1      
[41] purrr_0.3.4       ps_1.5.0          ellipsis_0.3.1    assertthat_0.2.1 
[45] utf8_1.1.4        stringi_1.5.3     cachem_1.0.3      crayon_1.4.1     
[49] R.oo_1.24.0

> Sys.getenv("R_ARCH")
[1] "/x64"

谢谢!

0 个答案:

没有答案