RStudio升级后无法打开CRAN链接、install.packages失效如何解决
RStudio升级后R包失效、安装报错修复方案
问题根因
- 安装包报URL连接错误:当前配置的CRAN镜像用的是
http协议,现在官方CRAN源已经强制走https,普通http请求会被直接拦截,无法拉取包索引 - 之前安装的包无法运行:当前使用的R 4.2.0是UCRT编译版本,和4.1.x及更早版本用的MinGW编译工具链完全不兼容,旧版本下编译的二进制包无法在该版本R上加载
修复步骤
先解决镜像连接失败问题
临时生效可直接在R控制台执行以下命令换源,国内用户优先选择清华镜像,下载速度远快于官方源:
官方https源配置:options(repos = c(CRAN = "https://cran.rstudio.com/"))清华镜像配置(国内网络环境推荐):
options(repos = c(CRAN = "https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))要永久生效的话,点击RStudio顶部菜单
Tools -> Global Options -> Packages,点击Primary CRAN repository旁的Change按钮,选择对应https协议的源,同时取消勾选页面上Use Internet Explorer library/proxy for HTTP选项——多数Windows环境下IE代理配置混乱会直接拦截R的网络请求,修改完成后确认设置,重启R会话即可。再解决旧包无法运行问题
源配置完成后,执行以下命令批量更新所有适配旧版本R的包到R 4.2兼容版本:update.packages(ask = FALSE, checkBuilt = TRUE)如果执行过程中个别包更新失败,单独运行
install.packages("对应包名")重新安装即可。编码异常补充处理
从返回的会话信息看当前系统区域为韩语编码,如果后续加载包出现编码相关报错,可执行以下命令临时切换为中文UTF-8编码:Sys.setlocale("LC_ALL","Chinese (Simplified)_China.utf8")要永久生效可打开Windows系统区域设置,开启「Beta版:使用Unicode UTF-8提供全球语言支持」选项,重启电脑后生效。
内容的提问来源于stack exchange,提问作者tyrashark
相关产品推荐
相关产品推荐

