Как решить исключение нулевой ссылки RDotNet REngine
Я пытаюсь использовать REngine.GetInstance()
функция, но я продолжаю получать исключение нулевой ссылки.
Я попытался использовать другую функцию в REngine на всякий случай getInstance
метод был виноват, как REngine.SetEnvironmentVariables()
все же они все возвращают исключение нулевой ссылки.
Я попытался переустановить пакет. Я попытался проверить путь установки, но не смог найти, как rdotnetlibrary обращается к нему. Я даже не уверен, что путь связан с проблемой.
Пожалуйста помоги.
3 ответа
Убедитесь, что ваши параметры запуска настроены правильно. Поскольку вы не предоставляете нам достаточно информации; это правильный способ запустить REngine r.net:
//...
StartupParameter rinit = new StartupParameter();
rinit.Quiet = true;
rinit.RHome = "C:/Program Files/R/R-3.4.3";
rinit.Interactive = true;
REngine.SetEnvironmentVariables();
rMain = REngine.GetInstance(null, true, rinit);
//...
Убедитесь, что вы настроили RHome на правильный установленный путь R.
У меня была такая же проблема при использовании версии 3.5.0
вызов REngine.GetInstance приведет к тому, что "Ссылка на объект не установлена на экземпляр объекта"
Я понижен до 3.4.0, и я больше не получаю эту ошибку.
Когда мы обновили R с 3,4 до 3,5, мы получили именно эту ошибку. Мы понизили рейтинг до 3.4 и пошли дальше.
Как указывалось в других ответах, это проблема, связанная с R 3.5 и выше. Мне также удалось обойти это, загрузив R 3.4.4 и запустив обе версии одновременно, используя решение Shique.
Для тех, кто не может понизить R, похоже, что jmp75 работает над исправлением, и есть ветка WIP, доступная по адресу https://github.com/StatTag/rdotnet/tree/r_3_5_0