我觉得奇怪的是,当我在Rstudio上运行时,我的闪亮的应用程序运行得很好,但是当我在闪亮的服务器(开源)上运行时,相同的项目并没有使用packrat私有库。我使用.libPaths()检查,私有库没有显示。我需要做任何配置才能让它工作吗?谢谢。
paste0(.libPaths(),' shinyBS version:',as.character(packageVersion('shinyBS')))在Rstudio上
[1] "C:/R/ADAP/packrat/lib/i386-w64-mingw32/3.1.1 shinyBS version:0.25"
[2] "C:/R/ADAP/packrat/lib-ext shinyBS version:0.25"
[3] "C:/R/ADAP/packrat/lib-R shinyBS version:0.25"在Shiny服务器上
shinyBS version:0.20 Lib:/usr/lib64/R/library shinyBS version:0.20 Lib:/usr/share/R/library发布于 2015-01-09 05:39:54
有一个配置文件.Renviron,其中包含一个环境变量R_LIBS。这是您的R会话(和.libPaths())了解到在哪里查找库的地方。要更改默认设置,请不要直接编辑.Renviron文件,而是在同一目录中创建一个副本并将其命名为.Renviron.site。编辑这个新文件中的R_LIBS变量。这可以防止您的配置更改在升级时被安装程序覆盖。
发布于 2020-01-10 21:26:07
我能够让packrat与闪亮的服务器开源工作。
下面是我在CentOS中的目录结构:
/srv/shiny-server/sample-apps/test1/
.Rprofile
packrat/
server.R
ui.R在本例中,我将packrat生成的.Rprofile文件和packrat/目录(包含已编译的库)以及server.R和ui.R文件复制到test1目录。
为应用程序创建R进程时,将正确加载packrat库。
为了验证,我可以这样做:
cd /srv/shiny-server/sample-apps/
sudo cp -r test1 test2
cd test2
sudo rm .Rprofile
sudo rm -rf packrat/然后,当我访问http://localhost:3838/sample-apps/test2/时,packrat库不会被加载。
请注意,在某些情况下,必须重新启动Shiny Server才能使更改生效(例如,如果用户当前正在使用应用程序,则该应用程序的R进程不会自动重新加载新的库)。使用sudo systemctl restart shiny-server (在CentOS上)重新启动。
https://stackoverflow.com/questions/26477495
复制相似问题