ShinyApp部署至shinyapp.io失败:启动报错exit status 1
解决ShinyApp部署到shinyapp.io的exit status 1错误
针对你遇到的部署后启动失败、页面显示空白的问题,以下是几个关键修复点:
1. 显式加载所有依赖包
你的代码使用了shiny、ggplot2、dplyr、Publish等包,但没有在开头声明加载。本地运行时这些包可能已加载,但shinyapp.io服务器是全新环境,必须显式调用:
library(shiny) library(ggplot2) library(dplyr) library(Publish)
不要移除这些library语句,这是部署的必要步骤。
2. 检查数据文件的上传与路径
确保new.csv、baseline.csv等所有数据文件和你的app脚本(通常是app.R)在同一个文件夹下,部署时完整上传所有文件。避免使用相对路径以外的写法,保持read.csv("文件名.csv")即可,但要确认文件名拼写完全一致(服务器区分大小写)。
3. 移除代码末尾的多余执行语句
你的代码最后一行names(data)会在应用启动时执行并输出内容,可能干扰Shiny的正常初始化流程,直接删除这行。
4. 修复glm模型中的不安全写法
代码中用eval(parse(text = ...))构建模型公式的写法容易引发错误,建议改用Shiny推荐的.data代词语法,更安全且易维护:
将:
logisticR <- glm(as.factor(Complications_new) ~ eval(parse(text = input$factors_predict_comp)), data, family = binomial())
改为:
logisticR <- glm(as.factor(Complications_new) ~ .data[[input$factors_predict_comp]], data = data, family = binomial())
同样修改reg_output2中的对应代码。
5. 查看详细错误日志
如果以上步骤仍未解决问题,在shinyapp.io控制台点击应用的"Logs"选项卡,查看完整启动日志——exit status 1只是通用错误,日志里会有具体报错信息(比如包缺失、数据文件找不到、变量不存在等),根据具体信息针对性修复。
内容的提问来源于stack exchange,提问作者yusefsoliman
相关产品推荐
相关产品推荐

