闪亮的服务器无法加载已安装的包

Shiny Server not able to load installed package

我在将应用程序部署到 Shiny Server 时遇到问题。

应用程序正在加载(或至少 ui.R 已加载),因此我可以看到用户界面。但是执行在那里停止,以下内容被转储到我的 JS 控制台:

Attaching package: ‘shinydashboard’

The following object is masked from ‘package:graphics’:

box

Loading required package: bitops Error in library(data.table) : there
  is no package called ‘data.table’

最后一行表明问题出在 data.table 包。

我检查了我的 Shiny Server 安装,data.table 已正确安装。我可以以普通用户和 sudo 用户身份在服务器上的 R 控制台中加载包。

我什至没有直接使用这个包,所以我猜它是某种依赖关系。

你有什么想法吗?

编辑: 这个问题的最小示例可以通过使用闪亮教程中的第 1 课示例重现:http://shiny.rstudio.com/tutorial/lesson1/ 并包括 library(data.table)

如果您需要 data.table 包来组合 data.frames, 我通过使用 dplyr 函数 rbind_all 而不是 data.table 中的 rbindlist 找到了一些解决方法(请记住,这要慢得多)

当我最近在 ec2 实例上部署 shiny 时,我遇到了类似的问题。 运行 不带参数的 library() 并查看您的不同包目录。我相信 shiny 使用我的图像附带的包的默认目录是“/usr/local/lib/R/site-library”。

当我安装软件包时,我确保明确说明要使用 lib= 安装的路径,install.packages("data.table",lib="/usr/local/lib/R/site-library")

谢谢@lbollar 和@MarkeD! 安装 chron 软件包和 install_github 版本的 data.table 解决了我的问题。