Я пытаюсь развернуть отдельное блестящее приложение для своей компании и коллег, чтобы оно использовалось без установки R. Я прочитал инструкции, чтобы сделать это с портативными версиями R и Chrome . Инструкции довольно просты и работают как шарм. Единственное, что приложение не работает, когда на моем компьютере не открыта обычная версия Chrome. Он открывает пустое окно Chrome и в лог-файле отображается этот код ошибки:
[8268: 13428: 0115 / 120242.667: ОШИБКА: browser_gpu_channel_host_factory.cc (139)] Не удалось запустить процесс графического процессора.
[8268: 8444: 0115 / 120242.980: ОШИБКА: in_progress_cache_impl.cc (203)] Кэш не инициализирован, не может RetrieveEntry.
[8268: 8444: 0115 / 120242.981: ОШИБКА: in_progress_cache_impl.cc (203)] Кэш не инициализирован, не может RetrieveEntry.
[8268: 8444: 0115 / 120242.981: ОШИБКА: in_progress_cache_impl.cc (203)] Кэш не инициализирован, не может RetrieveEntry.
[8268: 8444: 0115 / 120242.982: ОШИБКА: in_progress_cache_impl.cc (203)] Кэш не инициализирован, не может RetrieveEntry.
[8268: 8444: 0115 / 120242.982: ОШИБКА: in_progress_cache_impl.cc (203)] Кэш не инициализирован, не может RetrieveEntry.
[8268: 8444: 0115 / 120242.983: ОШИБКА: in_progress_cache_impl.cc (203)] Кэш не инициализирован, не может RetrieveEntry.
[8268: 13428: 0115 / 120243.047: ОШИБКА: browser_gpu_channel_host_factory.cc (139)] Не удалось запустить процесс GPU.
Как только я закрою окно, убейте задачу 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, приложение работает нормально, но это не так. Этот вид не соответствует цели переносимой версии и является еще одной досадной инструкцией, которую я должен дать своим коллегам перед использованием приложения.
Кто-нибудь знает, как это исправить?