Блестящий сервер предварительно загружает пакеты? - PullRequest
0 голосов
/ 08 июля 2019

Я использую Shiny Server Pro v1.5.10.990.Я хочу запустить приложение, которое зависит от версии пакета Rcpp 1.0.1.Я устанавливаю этот пакет в локальную библиотеку приложений.Проблема в том, что на сервере есть глобальная библиотека пакетов, которая содержит пакет Rcpp в версии 1.0.0.Приложение вылетает со следующей ошибкой:

Package ‘Rcpp’ version 1.0.0 cannot be unloaded:
 Error in unloadNamespace(package) : namespace ‘Rcpp’ is imported by ‘httpuv’, ‘htmltools’, ‘later’, ‘promises’ so cannot be unloaded
Calls: runApp ... tryCatch -> tryCatchList -> tryCatchOne -> <Anonymous>
Execution halted

Однако Rcpp - это первый пакет, который я загружаю в свой код.Возможно ли, что сервер Shiny предварительно загружает пакеты «httpuv», «htmltools», «позже», «обещания»?Есть какие-нибудь идеи, как я могу выгрузить пакет Rcpp и загрузить его из локальной библиотеки?

1 Ответ

0 голосов
/ 09 июля 2019

Как было предложено пользователем 2554330 в комментариях, я искал опцию R_LIBS и нашел эту статью , которая указала мне на настройку Shiny Server (работает только в версии Pro) для запуска этого конкретного приложения с его локальным пакеты, переопределяя глобальную библиотеку пакетов. Это исправило мою проблему.

  location /AinA-mvp2 {
    run_as         shiny;
    site_dir       /srv/shiny-server/localarea36;
    log_dir        /mnt/logs/Test/localarea36;
    log_file_mode  0644;
    exec_supervisor "R_LIBS_USER=/srv/shiny-server/localarea36/library"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...