Приложение Shiny Server, работающее на виртуальной машине Ubuntu 18.04 (VirtualBox), имеющее проблемы с OpenStreetMaps (ошибка Java) - PullRequest
0 голосов
/ 10 марта 2020

Я новичок в Shiny Server и плохо разбираюсь в Linux, так что терпите меня.

Я использую Shiny Server в Ubuntu 18.04, которая является виртуальной машиной (VirtualBox). Я использую пакет OpenStreetMaps в моем приложении, которое использует пакет r Java. У меня были некоторые проблемы с установкой пакетов r Java и OpenStreetMaps, но, наконец, мне удалось после ручной установки Java Среда выполнения и Java Комплект разработчика с командами терминала ниже:

* sudo apt update
* sudo apt install default-jre
* sudo apt install default-jdk
* sudo R CMD javareconf
* sudo su - -c "R -e \"install.packages('rJava', repos='https://cran.rstudio.com/')\""
* sudo su - -c "R -e \"install.packages('OpenStreetMap', repos='https://cran.rstudio.com/')\""

Все пакеты находятся в глобальной библиотеке /usr/local/lib/R/site-library.

При запуске приложения через Shiny Server я получаю сообщение об ошибке:

ОШИБКА: произошла ошибка. Проверьте ваши журналы или свяжитесь с автором приложения для уточнения.

При запуске приложения через сервер RStudio я получаю следующую ошибку:

Ошибка в .jcall ("java / lang / Class "," Ljava / lang / Class; "," forName ", cl,: RcallMethod: невозможно определить класс объекта

Ошибка в .jfindClass (as.character (class)): Java Exception .jfindClass (as.character (class)) new ("jobjRef", jobj =, jclass = "java / lang / Throwable")

Предупреждение: ошибка в классах .try Java: Java может не загружается. Скорее всего, потому что Java не настроен с вашей установкой R.

Вот несколько советов по устранению неполадок:

  1. Установка Java (для ma c рассмотрите возможность установки java 1.6 из https://support.apple.com/kb/DL1572?locale=en_US)

  2. Запустите R CMD javareconf в терминале. Если вы используете Ma c OS X> = 10.7. Возможно, вы захотите попробовать R CMD javareconf JAVA_CPPFLAGS = -I / System / Library / Frameworks / JavaVM.framework / Headers вместо.

    188: останов

    1 87: .try Java

    186: openmap

    185: [/home/amsp/Documents/MobileLab/app.R#326]

    183: .fun c

    180: contextFun c

    179: env $ runWith

    172: ctx $ run

    171: self $ .updateValue

    169: map.latlon

    167: renderPlot [/home/amsp/Documents/MobileLab/app.R#347]

    165: веселье c

    125: drawPlot

    111: реактивный: plotObj

    95: drawReactive

    82: origRenderFun c

    81: вывод $ plot_map1

    1: runApp

Я пытался запустить Run R CMD javareconf, и это не решило эту проблему.

Проверка Java выход:

java -version

openjdk версия "11.0.6" 2020-01-14

Среда выполнения OpenJDK (сборка 11.0.6 + 10-post-Ubuntu-1ubuntu118.04.1)

Виртуальная 64-битная серверная OpenJDK (сборка 11.0.6 + 10-post-Ubuntu-1ubuntu118.04.1) , смешанный режим, обмен)

javac -версия

javac 11.0.6

Мне интересно, может быть, это проблема с разрешениями? Любая помощь будет принята с благодарностью! Спасибо!

1 Ответ

0 голосов
/ 24 марта 2020

Оказывается, все это похоже на проблему с версиями. OpenStreetMap не похоже на Java 11, но большинство вещей, как правило, совместимы с 8.

Перезагрузите виртуальную машину, чтобы начать все сначала, и не пытайтесь получить доступ к Блестящему или Rstudio перед выполнением. Удалите Java 11 и установите java 8

sudo apt-get remove openjdk-11*

sudo apt-get install openjdk-8*

sudo R CMD javareconf

sudo service rstudio-server restart

sudo service shiny-server restart

Затем получил доступ к Shiny и все заработало.

...