我编写了一个golem
应用程序并想将其部署在shinyapp.io 上。不幸的是,每次我尝试这样做时都会出现以下错误(在日志中):
loadSupport(appDir, renv = sharedEnv, globalrenv = NULL) 中的警告:正在为 Shiny 应用程序加载 R/ 子目录,但该目录似乎包含 R 包。在 R/ 中获取文件可能会导致意外行为。
与我的项目相关的所有文件都存储在我的golem
项目最初创建的一个目录中。我还检查了手动工作目录并将其设置为“R”文件夹(其中存储了 app_server 和 app_ui)。不幸的是,当我部署我的应用程序时,提到的错误再次出现。此外,每次我在 RStudio 中关闭项目时,我都会将工作区图像保存到“.RData”文件(该文件也存储在主目录中) - 也许这是一个问题(但我也尝试部署不包含该文件的文件)也失败)。我实在不知道问题出在哪里以及这个错误意味着什么。
有趣的是,常规(单个)app.R 可以毫无问题地部署在shinyapps 上。
小智 7
从 Shiny 1.5 开始,如果您运行一个带有名为 的子目录的闪亮应用程序R/
,它将自动加载存储在其中的每个函数。您可以避免这种情况,将自动加载选项设置为FALSE
:
options(shiny.autoload.r=FALSE)
Run Code Online (Sandbox Code Playgroud)
我所做的(我不确定这是否是最佳实践)是在调用之前进行设置shiny::runApp()
。例如,launch()
我的包中通常有一个函数,它调用shiny::runApp()
. 在此函数中包含该选项launch()
应该可以解决该问题。
尽管如此,该消息是警告,而不是错误,并且有可能一切都在您闪亮的应用程序中正常工作。