如果已安装的Chrome版本未运行,则在部署独立的闪亮应用程序时,便携式Chrome浏览器会崩溃

时间:2019-01-15 11:34:12

标签: r google-chrome shiny crash

我正在尝试为我的公司和同事部署一个独立的闪亮应用程序,而无需安装R。我已阅读了有关使用R and Chrome 的便携式版本进行此操作的说明。这些说明非常简单明了,并且就像一个魅力。唯一的事情是,当我在计算机上未打开正常版本的Chrome时,该应用程序无法运行。它会打开一个空白的Chrome窗口,并且日志文件显示以下错误代码:

  

[8268:13428:0115 / 120242.667:ERROR:browser_gpu_channel_host_factory.cc(139)]无法启动GPU进程。   [8268:8444:0115 / 120242.980:ERROR:in_progress_cache_impl.cc(203)]缓存未初始化,无法RetrieveEntry。   [8268:8444:0115 / 120242.981:ERROR:in_progress_cache_impl.cc(203)]缓存未初始化,无法RetrieveEntry。   [8268:8444:0115 / 120242.981:ERROR:in_progress_cache_impl.cc(203)]缓存未初始化,无法RetrieveEntry。   [8268:8444:0115 / 120242.982:ERROR:in_progress_cache_impl.cc(203)]缓存未初始化,无法RetrieveEntry。   [8268:8444:0115 / 120242.982:ERROR:in_progress_cache_impl.cc(203)]缓存未初始化,无法RetrieveEntry。   [8268:8444:0115 / 120242.983:ERROR:in_progress_cache_impl.cc(203)]缓存未初始化,无法RetrieveEntry。   [8268:13428:0115 / 120243.047:ERROR:browser_gpu_channel_host_factory.cc(139)]无法启动GPU进程。

关闭窗口后,在taskmanager中杀死R任务,打开我的普通版Chrome并重新启动程序,一切正常。 我的runShinyApp.R的代码是:

message('library paths:\n', paste('... ', .libPaths(), sep='', collapse='\n'))
chrome.portable = file.path(getwd(),
                            '../GoogleChromePortable/App/Chrome-bin/chrome.exe')
launch.browser = function(appUrl, browser.path=chrome.portable) {
  browser.path = chartr('/', '\\', browser.path)
  message('Browser path: ', browser.path)
  CMD = browser.path
  ARGS = sprintf('--app="%s"', appUrl)
  system2(CMD, args=ARGS, wait=FALSE)
  NULL
}
shiny::runApp('./shiny/', launch.browser=launch.browser)

我的run.vbs看起来像这样:

Rexe           = "../R-Portable\App\R-Portable\bin\Rscript.exe"
Ropts          = "--no-save --no-environ --no-init-file --no-restore --no-Rconsole"
RScriptFile    = "runShinyApp.R"
Outfile        = "ShinyApp.log" 
strCommand     = Rexe & " " & Ropts & " " & RScriptFile & " 1> " & Outfile & " 2>&1"

intWindowStyle = 0     ' Hide the window and activate another window.'
bWaitOnReturn  = False ' continue running script after launching R   '

' the following is a Sub call, so no parentheses around arguments'
CreateObject("Wscript.Shell").Run strCommand, intWindowStyle, bWaitOnReturn

总而言之,每当运行正常版本的Chrome时,该应用程序都可以正常运行,不是吗?这种错过了便携式版本的目标,只是我在使用该应用之前必须给同事的另一条令人讨厌的指示。

有人知道解决办法吗?

0 个答案:

没有答案