You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

发布Shiny应用至shinyapps.io时遇raster/terra包依赖错误

解决Shiny应用发布至shinyapps.io时raster/terra依赖报错问题
  • 确认本地包安装状态并重新安装
    若之前安装可能存在损坏,重新安装并确保依赖完整:

    install.packages(c("raster", "terra"), dependencies = TRUE)
    

    安装完成后,本地运行Shiny应用验证包能正常加载、无报错。

  • 显式在代码中加载依赖包
    在app.R(或ui.R、server.R的开头)显式添加包加载语句,避免依赖隐式加载导致部署工具无法识别:

    library(raster)
    library(terra)
    
  • 清理部署缓存并重新发布
    shinyapps.io的旧缓存可能残留错误依赖记录,用rsconnect包清理后重新生成部署清单:

    library(rsconnect)
    rsconnect::cleanManifest()
    

    执行完上述命令后,重新尝试发布应用。

  • 用renv锁定依赖版本(可选)
    若存在版本兼容问题,使用renv管理依赖,确保shinyapps.io安装与本地一致的包版本:

    # 初始化renv环境
    renv::init()
    # 安装指定版本的包(可替换为你本地使用的版本号)
    renv::install("raster@3.6-26")
    renv::install("terra@1.7-71")
    # 生成依赖锁定文件
    renv::snapshot()
    

    提交代码时带上生成的renv.lock文件,再进行部署。

  • 检查库路径是否正确
    用.libPaths()查看当前R会话的库路径,确认raster和terra包安装在该路径下,避免因自定义库路径导致部署工具无法检测到包。

内容的提问来源于stack exchange,提问作者xvijerhe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 20:50:26