【问题标题】:Deploying shinyapps on a desktop在桌面上部署 shinyapps
【发布时间】:2017-04-26 04:08:25
【问题描述】:

我有一个闪亮的应用程序,可以在我的计算机和 shinyapps.io 上完美运行。这个应用程序是为我需要共享它以在他们的桌面上运行的客户端构建的。我已经使用了here 上给出的指导。

我闪亮的服务器的第一行读取一个 RDS 文件并加载数据。如上面共享的示例中所示,我已将 RDS 复制到闪亮文件夹中。我当前的文件夹如下所示:

C:/dist/
GoogleChromePortable
R-Portable
shiny - within shiny folder i have ui.R, server.R, lhg.RDS
run.vbs
runShinyApp.R

运行.vbs

Randomize
CreateObject("Wscript.Shell").Run "R-Portable\App\R-Portable\bin\i386\R.exe CMD BATCH --vanilla --slave runShinyApp.R" & " " & RND & " ", 0, False

runShinyApp.R

.libPaths("./R-Portable/App/R-Portable/library")
browser.path <- file.path(getwd(),"GoogleChromePortable/GoogleChromePortable.exe")
options(browser = browser.path)
shiny::runApp("./Shiny/",port=8888,launch.browser=TRUE)

我的服务器是这样开始的:

lhg <- readRDS(file.path(getwd(),"LHG.RDS"))

当我运行 vbs 文件时,它会打开一个浏览器,但会抛出一条错误消息:

Error:object "lhg" not found

每次我运行时,该错误都会创建一个带有一些随机数的新文件,其中包含相同错误的日志。

有人可以帮忙吗?

【问题讨论】:

  • 您的文件路径似乎不一致...您的 .libPaths 添加与工作目录有关,无论 R-Portable 默认情况下,您的 chrome.portablerunApp() 路径都很难-从C:/ 编码(似乎对事物的位置做出了强有力的假设),并且您没有显示您在哪里寻找lhg 文件。我没有解决方案,但我认为您需要确定工作目录的位置并从那里开始。
  • 一个好的诊断工具可能是制作一个简单的闪亮应用程序,它只打印其工作目录并将其粘贴在同一框架中。
  • @Gregor 我在指定工作目录时对我的代码进行了更改...我还包含了 server.R 中读取 rds 文件的行。随着 server.R 中的更改,应用程序在我的原始代码中启动没有问题,但在可移植版本中抛出相同的错误。这是两台不同的机器。
  • 你可以printgetwd()save到一个文本文件中检查工作目录。
  • @Bangyou 非常感谢....显然,我认为我必须在 UI 和服务器中指定路径,我这样做了。该应用程序完美地打开了几次,然后就停止了。错误日志读取“对等方重置连接”。我重新安装了闪亮的,但问题仍然存在。有点棘手,尤其是,我只知道如何在 R 中工作,而不是在 Windows 中。

标签: r shiny desktop


【解决方案1】:

您可能想试用 RInno 软件包(我上个月刚刚将它发布到 CRAN)。它有助于自动化这些类型的桌面部署,您应该能够通过以下方式进行设置:

install.packages("RInno")
require(RInno)
RInno::install_inno()

ui.R & server.R所在目录为app_dir:

create_app(app_name = "Your app's name", app_dir = "path/to/app_dir")
compile_iss()

生成的安装程序应“按原样”安装您的应用,因此您无需管理那些棘手的工作目录问题。如果它在您的开发环境中工作,它应该在安装后工作。如果您想了解有关如何自定义安装的更多资源,请查看FI Labs - RInno

【讨论】:

    猜你喜欢
    • 2016-01-29
    • 2021-08-03
    • 1970-01-01
    • 2021-06-16
    • 1970-01-01
    • 1970-01-01
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多