r闪亮/闪亮-服务器-查找软件包的问题 [英] R shiny / shiny-server - issue with finding packages
问题描述
我在一台ubuntu服务器上安装了SHINING和SHINY-SERVER。我在一台正在运行的dev服务器上进行了类似的安装。R会话打开时会加载一些包。这个应用程序在本地运行得很好,但是我收到消息说,当它在SHILINY-SERVER上运行时,它找不到软件包。
应用程序上的错误
During startup - Warning messages:
1: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
there is no package called ‘shiny’
2: package ‘shiny’ in options("defaultPackages") was not found
3: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
there is no package called ‘data.table’
4: package ‘data.table’ in options("defaultPackages") was not found
5: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
there is no package called ‘optiRum’
6: package ‘optiRum’ in options("defaultPackages") was not found
Error in eval(expr, envir, enclos) :
The Shiny package was not found in the library. Ensure that
Shiny is installed and is available in the Library of the
user you're running this application as.
Calls: local -> eval.parent -> eval -> eval -> eval -> eval
Execution halted
在Rprofile.site中我有
# ## Example of Rprofile.site
local({
# # add MASS to the default packages, set a CRAN mirror
old <- getOption("defaultPackages"); r <- getOption("repos")
# r["CRAN"] <- "http://my.local.cran"
options(defaultPackages = c(old, "shiny","data.table","optiRum"), repos = r)
})
.First <- function() {
cat("
Welcome to R!
")
# setwd("/home/OPTIMUMCREDIT/R/Projects")
Sys.umask(mode="0002")
}
.libPaths(c("/home/R/WorkingPackages","/home/R/ApprovedPackages"))
在SHINY-SERVER配置中,我只有默认配置(因此作为SHINY和DEFAULT端口运行)。
My sessionInfo()
> sessionInfo()
R version 3.0.3 (2014-03-06)
Platform: x86_64-pc-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=C LC_COLLATE=C LC_MONETARY=C LC_MESSAGES=C LC_PAPER=C
[8] LC_NAME=C LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=C LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] ggplot2_0.9.3.1 scales_0.2.3 RCurl_1.95-4.1 bitops_1.0-6 rstudio_0.98.501 optiRum_0.30 data.table_1.9.2 shiny_0.8.0
loaded via a namespace (and not attached):
[1] MASS_7.3-29 RColorBrewer_1.0-5 RJSONIO_1.0-3 Rcpp_0.11.0 caTools_1.16 colorspace_1.2-4 dichromat_2.0-0
[8] digest_0.6.4 grid_3.0.3 gtable_0.1.2 httpuv_1.2.3 labeling_0.2 munsell_0.4.2 plyr_1.8.1
[15] proto_0.3-10 reshape2_1.2.2 stringr_0.6.2 tools_3.0.3 xtable_1.7-3
我试图在代码中添加一条消息来输出library(shiny)
上面的libPath,但不幸的是,同样的错误消息也出现了。我先卸载并重新安装了一些闪亮的服务器,就像我不寻常地安装了闪亮的服务器一样,然后我记起我需要闪亮的服务器,但不需要快乐。我已经确认SHINY安装在ApprovedPackages中。在装入时,我添加了软件包,希望能绕过问题或找到更多信息。
更新-以SHINY身份运行 啊-情节变得复杂了.在控制台上使用用户shiny登录会导致与应用程序收到的警告相同的警告,而且.libPath()与其他所有人的警告不同:
> sessionInfo()
R version 3.0.3 (2014-03-06)
Platform: x86_64-pc-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_GB.UTF-8 LC_COLLATE=en_GB.UTF-8
[5] LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8
[7] LC_PAPER=en_GB.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"
[3] "/usr/lib/R/library"
我有点困惑,希望有人能为我指出解决问题的正确方向。
推荐答案
很抱歉给您带来麻烦。您可以尝试运行以下命令在系统范围内安装SHINY吗?
sudo su -
-c "R -e "install.packages('shiny', repos='http://cran.rstudio.com/')""
这来自Admin Guide,它(希望)将成为这类问题的有用资源。
我怀疑问题在于您的用户帐户中确实正确安装了SHINY,但是因为它不是作为sudo安装的,所以用户无法使用它。
编辑:
您还需要确保在shiny
用户启动R进程时应用Rprofile.site
。您可以通过以shiny
身份登录来执行此操作:
sudo su shiny
然后打开R并检查.libPaths()
或查看是否可以在那里成功运行library(shiny)
。如果您无法访问,则可能是让shiny
用户进入您的共享软件包目录或Rprofile.site
文件(或其父目录)有问题。请确保将shiny
用户添加到必要的组中,或者确保这些文件及其所有父目录向shiny
用户授予适当的权限。
这篇关于r闪亮/闪亮-服务器-查找软件包的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!