安装 'ReporteRs' 和 'ReporteRsjars' 时出错
Error installing 'ReporteRs' and 'ReporteRsjars'
最终我试图在 Windows 7 系统上安装 R 包 ReporteRs
(ReporteRs_0.8.7.tar.gz
)(会话信息,和其他信息如下)。这取决于我遇到安装错误的包 ReporteRsjars
(ReporteRsjars_0.0.2.tar.gz
)。
这也取决于安装的 R 包 rJava
以及 JDK/JRE (jre1.8.0_112).
我正在一台无法访问互联网的机器上进行安装,因此我是通过内置 PACKAGES
和 PACKAGES.gz
的本地版本的 CRAN 执行此操作。这一直没有任何问题(至少现在是这样)。
rJava
加载没有任何问题,但是在安装 ReporteRsjars
时,出现以下错误(请参阅下面的 Install Attempt ERROR)。
注意: 其他 Whosebug 问题似乎更关注 library(rJava)
问题,而不是在安装依赖于 rJava
.
的软件包时
rJava
DLL 位于以下位置:
C:/Program Files/R/R-3.3.2/library/rJava/libs/x64/rJava.dll
已重新安装多次(成功)。
sessionInfo
和更多信息在错误下方(包括我尝试过的)。
安装尝试错误
cran_dir_url
设置为CRAN包所在的路径。这是前缀 file://
> library(rJava)
> install.packages('ReporteRsjars', contriburl=cran_dir_url, repos = cran_dir_url, type = 'source')
## * installing *source* package 'ReporteRsjars' ...
## ** package 'ReporteRsjars' successfully unpacked and MD5 sums checked
## ** R
## ** inst
## ** preparing package for lazy loading
## ** help
## No man pages found in package 'ReporteRsjars'
## *** installing help indices
## ** building package indices
## ** testing if installed package can be loaded
## *** arch - i386
## Error : .onLoad failed in loadNamespace() for 'rJava', details:
## call: library.dynam("rJava", pkgname, libname)
## error: DLL 'rJava' not found: maybe not installed for this architecture?
## Error: loading failed
## Execution halted
## *** arch - x64
## ERROR: loading failed for 'i386'
## * removing 'C:/Program Files/R/R-3.3.2/library/ReporteRsjars'
## Warning in install.packages :
## running command '"C:/PROGRA~1/R/R-33~1.2/bin/x64/R" CMD INSTALL -l "C:\Program Files\R\R-3.3.2\library" /Users/cirina_ext/Documents/StevenBanville/CRAN_Targeted/ReporteRsjars_0.0.2.tar.gz' had status 1
## Warning in install.packages :
## installation of package 'ReporteRsjars' had non-zero exit status
##
环境信息和工具
路径信息:以下包含在系统路径中,是安装Java的位置。
C:\Program Files\Java\jre1.8.0_112\bin\;C:\Program Files\Java\jre1.8.0_112\bin\server\;%path%
(JDK 安装程序:jdk-8u112-windows-x64)
Rtools 版本和位置
版本:3.4.0.1962
地点:C:\Rtools
我试过的
我开始尝试安装 ReporteRs
R 包,这安装了所有依赖项但在 ReporteRsjars
包上失败了。
安装 JDK/JRE 后,我重新安装了 rJava
(这是在多次尝试安装 R 包后完成的)。所有 rJava
安装都成功了,library(rJava)
.
也是如此
我试图在 windows 命令 window 中 运行 以下命令,正如我在许多 SO 答案中看到的那样。
R CMD javareconf
'javareconf' is not recognized as an internal or external command, operable program or batch file.
我试图在 path
系统变量中包含 rJava
DLL 的路径,但没有成功。
注意:我在每次尝试后都重新启动了 RGui 和 RStudio(我在这两种环境中都尝试过)。我也重启了机器。
我已经进行了大量的谷歌搜索并查看了 Whosebug,但发现的所有问题都与此不同。它们看起来很相似,但在尝试了很多事情之后,我仍然遇到上述错误。我省略了我看过的 links,但如果有帮助,可以添加它们。
如果能提供帮助我排查和解决此问题的指南,我们将不胜感激。
会话信息
> sessionInfo('rJava')
## R version 3.3.2 (2016-10-31)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows 7 x64 (build 7601) Service Pack 1
##
## locale:
## [1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
## [3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
## [5] LC_TIME=English_United States.1252
##
## attached base packages:
## character(0)
##
## other attached packages:
## [1] rJava_0.9-8
##
## loaded via a namespace (and not attached):
## [1] graphics_3.3.2 tools_3.3.2 utils_3.3.2 grDevices_3.3.2 stats_3.3.2 datasets_3.3.2
## [7] methods_3.3.2 base_3.3.2
编辑
我尝试在另一台只有 64 位版本 Java 的机器上进行相同的安装(并确认它是 64 位),但遇到了同样的错误。这是一个片段,但它与上面的错误相同:
...
*** arch - i386
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: library.dynam("rJava", pkgname, libname)
error: DLL 'rJava' not found: maybe not installed for this architecture?
Error: loading failed
Execution halted
...
我仍在查看@42- 评论中的 link,但这看起来不像 JRE/JDK 不是 64 位的问题。
编辑 2
注意:这不是作为答案发布,因为它只是一种解决方法。
我找到了一个不太理想的解决方法。似乎本地 CRAN 副本的安装与我预期的不太相似。我使用非本地 CRAN(即通常的方式)在等效的 Windows 7 机器上安装了有问题的库安装,并将目录复制到另一台机器(即未连接到互联网的机器)。这似乎有效,但不清楚为什么另一种方法无效(使用更新的 PACKAGES 文件的本地 CRAN 副本)。我注意到的一件事是,在访问通常的 CRAN 存储库时,它使用了 .zip
版本的库,而不是 tar.gz
;我不确定这是否重要。
编辑 3
根据 David Gohel 在 ReporteRs Issues 中的回复,添加了 INSTALL_opts = "--no-multiarch"
的以下代码可能会解决此问题:
install.packages("ReporteRs", contriburl=cran_dir_url,
repos = cran_dir_url,
type = 'source', INSTALL_opts = "--no-multiarch")
如果我确定它可以解决问题,我会将其添加为答案,但是,我已经实施了 EDIT 2.
中提到的解决方法
根据 David Gohel 在此 GitHub ReporteRs Issues 中的回复,添加了 INSTALL_opts = "--no-multiarch"
的以下代码解决了我遇到的问题:
install.packages("ReporteRs", contriburl=cran_dir_url,
repos = cran_dir_url,
type = 'source',
INSTALL_opts = "--no-multiarch")
编辑
变量cran_dir_url
应指向包含.tar.gz
安装包文件的目录。可以使用的两个路径示例如下:
# (*) Web: URL pointing to CRAN
cran_dir_url <- "https://cloud.r-project.org/src/contrib"
# (*) Local: Pointing to local copy of CRAN (or whatever local packages you
# would like to install).
# Note: this example is a Mac OS path with username "someuser".
# Note: the three "/" chars are correct ("file://" followed by "/Users/..." => "file:///Users/..."
cran_dir_url <- "file:///Users/someuser/CRAN_Local/"
在上面两个路径(http和file)里面,会有.tar.gz
个文件(例如ggplot2_3.3.5.tar.gz
)。
最终我试图在 Windows 7 系统上安装 R 包 ReporteRs
(ReporteRs_0.8.7.tar.gz
)(会话信息,和其他信息如下)。这取决于我遇到安装错误的包 ReporteRsjars
(ReporteRsjars_0.0.2.tar.gz
)。
这也取决于安装的 R 包 rJava
以及 JDK/JRE (jre1.8.0_112).
我正在一台无法访问互联网的机器上进行安装,因此我是通过内置 PACKAGES
和 PACKAGES.gz
的本地版本的 CRAN 执行此操作。这一直没有任何问题(至少现在是这样)。
rJava
加载没有任何问题,但是在安装 ReporteRsjars
时,出现以下错误(请参阅下面的 Install Attempt ERROR)。
注意: 其他 Whosebug 问题似乎更关注 library(rJava)
问题,而不是在安装依赖于 rJava
.
rJava
DLL 位于以下位置:
C:/Program Files/R/R-3.3.2/library/rJava/libs/x64/rJava.dll
已重新安装多次(成功)。
sessionInfo
和更多信息在错误下方(包括我尝试过的)。
安装尝试错误
cran_dir_url
设置为CRAN包所在的路径。这是前缀 file://
> library(rJava)
> install.packages('ReporteRsjars', contriburl=cran_dir_url, repos = cran_dir_url, type = 'source')
## * installing *source* package 'ReporteRsjars' ...
## ** package 'ReporteRsjars' successfully unpacked and MD5 sums checked
## ** R
## ** inst
## ** preparing package for lazy loading
## ** help
## No man pages found in package 'ReporteRsjars'
## *** installing help indices
## ** building package indices
## ** testing if installed package can be loaded
## *** arch - i386
## Error : .onLoad failed in loadNamespace() for 'rJava', details:
## call: library.dynam("rJava", pkgname, libname)
## error: DLL 'rJava' not found: maybe not installed for this architecture?
## Error: loading failed
## Execution halted
## *** arch - x64
## ERROR: loading failed for 'i386'
## * removing 'C:/Program Files/R/R-3.3.2/library/ReporteRsjars'
## Warning in install.packages :
## running command '"C:/PROGRA~1/R/R-33~1.2/bin/x64/R" CMD INSTALL -l "C:\Program Files\R\R-3.3.2\library" /Users/cirina_ext/Documents/StevenBanville/CRAN_Targeted/ReporteRsjars_0.0.2.tar.gz' had status 1
## Warning in install.packages :
## installation of package 'ReporteRsjars' had non-zero exit status
##
环境信息和工具
路径信息:以下包含在系统路径中,是安装Java的位置。
C:\Program Files\Java\jre1.8.0_112\bin\;C:\Program Files\Java\jre1.8.0_112\bin\server\;%path%
(JDK 安装程序:jdk-8u112-windows-x64)
Rtools 版本和位置
版本:3.4.0.1962
地点:C:\Rtools
我试过的
我开始尝试安装
ReporteRs
R 包,这安装了所有依赖项但在ReporteRsjars
包上失败了。安装 JDK/JRE 后,我重新安装了
rJava
(这是在多次尝试安装 R 包后完成的)。所有rJava
安装都成功了,library(rJava)
. 也是如此
我试图在 windows 命令 window 中 运行 以下命令,正如我在许多 SO 答案中看到的那样。
R CMD javareconf
'javareconf' is not recognized as an internal or external command, operable program or batch file.
我试图在
path
系统变量中包含rJava
DLL 的路径,但没有成功。注意:我在每次尝试后都重新启动了 RGui 和 RStudio(我在这两种环境中都尝试过)。我也重启了机器。
我已经进行了大量的谷歌搜索并查看了 Whosebug,但发现的所有问题都与此不同。它们看起来很相似,但在尝试了很多事情之后,我仍然遇到上述错误。我省略了我看过的 links,但如果有帮助,可以添加它们。
如果能提供帮助我排查和解决此问题的指南,我们将不胜感激。
会话信息
> sessionInfo('rJava')
## R version 3.3.2 (2016-10-31)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows 7 x64 (build 7601) Service Pack 1
##
## locale:
## [1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
## [3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
## [5] LC_TIME=English_United States.1252
##
## attached base packages:
## character(0)
##
## other attached packages:
## [1] rJava_0.9-8
##
## loaded via a namespace (and not attached):
## [1] graphics_3.3.2 tools_3.3.2 utils_3.3.2 grDevices_3.3.2 stats_3.3.2 datasets_3.3.2
## [7] methods_3.3.2 base_3.3.2
编辑
我尝试在另一台只有 64 位版本 Java 的机器上进行相同的安装(并确认它是 64 位),但遇到了同样的错误。这是一个片段,但它与上面的错误相同:
...
*** arch - i386
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: library.dynam("rJava", pkgname, libname)
error: DLL 'rJava' not found: maybe not installed for this architecture?
Error: loading failed
Execution halted
...
我仍在查看@42- 评论中的 link,但这看起来不像 JRE/JDK 不是 64 位的问题。
编辑 2
注意:这不是作为答案发布,因为它只是一种解决方法。
我找到了一个不太理想的解决方法。似乎本地 CRAN 副本的安装与我预期的不太相似。我使用非本地 CRAN(即通常的方式)在等效的 Windows 7 机器上安装了有问题的库安装,并将目录复制到另一台机器(即未连接到互联网的机器)。这似乎有效,但不清楚为什么另一种方法无效(使用更新的 PACKAGES 文件的本地 CRAN 副本)。我注意到的一件事是,在访问通常的 CRAN 存储库时,它使用了 .zip
版本的库,而不是 tar.gz
;我不确定这是否重要。
编辑 3
根据 David Gohel 在 ReporteRs Issues 中的回复,添加了 INSTALL_opts = "--no-multiarch"
的以下代码可能会解决此问题:
install.packages("ReporteRs", contriburl=cran_dir_url,
repos = cran_dir_url,
type = 'source', INSTALL_opts = "--no-multiarch")
如果我确定它可以解决问题,我会将其添加为答案,但是,我已经实施了 EDIT 2.
中提到的解决方法根据 David Gohel 在此 GitHub ReporteRs Issues 中的回复,添加了 INSTALL_opts = "--no-multiarch"
的以下代码解决了我遇到的问题:
install.packages("ReporteRs", contriburl=cran_dir_url,
repos = cran_dir_url,
type = 'source',
INSTALL_opts = "--no-multiarch")
编辑
变量cran_dir_url
应指向包含.tar.gz
安装包文件的目录。可以使用的两个路径示例如下:
# (*) Web: URL pointing to CRAN
cran_dir_url <- "https://cloud.r-project.org/src/contrib"
# (*) Local: Pointing to local copy of CRAN (or whatever local packages you
# would like to install).
# Note: this example is a Mac OS path with username "someuser".
# Note: the three "/" chars are correct ("file://" followed by "/Users/..." => "file:///Users/..."
cran_dir_url <- "file:///Users/someuser/CRAN_Local/"
在上面两个路径(http和file)里面,会有.tar.gz
个文件(例如ggplot2_3.3.5.tar.gz
)。