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

VSCode中运行Shiny App导致R终端冻结问题求助

VSCode运行Shiny应用终端冻结的排查方案

问题描述

此前使用RStudio,切换到VSCode后,运行任意Shiny应用(包括官方示例shiny::runExample("01_hello"))都会导致R终端会话冻结,无法输入任何内容,必须关闭并重新打开R终端才能恢复。终端输出如下:

r$> shiny::runExample("01_hello")
Loading required package: shiny
Warning: package 'shiny' was built under R version 4.1.1

Listening on http://127.0.0.1:4789
Browsing http://127.0.0.1:4789

排查与解决步骤

  • 更新R插件:确保VSCode的R Extension是最新版本,旧版本可能存在Shiny运行的兼容性问题,在扩展面板找到R插件点击更新。
  • 修改Shiny启动参数:默认启动模式会占用终端主线程,添加launch.browser = FALSE参数避免阻塞:
    shiny::runExample("01_hello", launch.browser = FALSE)
    
    运行后复制终端输出的链接手动打开浏览器,此时终端可正常输入。
  • 调整终端设置:
    • 打开VSCode设置(快捷键Ctrl+,),搜索对应系统的终端启动参数(如Windows的terminal.integrated.shellArgs.windows),移除可能导致阻塞的特殊参数。
    • 切换终端类型,比如Windows下从PowerShell换为Command Prompt,Mac/Linux下从Zsh换为Bash,测试是否解决冻结。
  • 重新安装Shiny包:终端提示Shiny基于R 4.1.1构建,若当前R版本差异较大,重新安装匹配版本的Shiny:
    install.packages("shiny")
    
  • 排查扩展冲突:暂时禁用其他R相关扩展或终端增强类扩展,测试是否是扩展冲突导致冻结。
  • 使用插件自带的运行功能:右键点击Shiny脚本,选择Run Shiny App(若R插件提供该选项),替代手动在终端输入命令的方式。

临时应急方法

若以上方案未立即生效,运行Shiny后可按Ctrl+C强制终止进程,终端即可恢复输入,无需重启整个会话。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 20:40:29