Строка ошибки «Ссылка на объект, не установленная на экземпляр объекта.» указывает, что вы не назначили экземпляр объекта объектной ссылке, и все же вы получаете доступ к свойствам / методам этого объекта.
например: скажем, у вас есть класс под названием myClass и он содержит одно свойство prop1.
public Class myClass
{
public int prop1 {get;set;}
}
Теперь вы получаете доступ к этому prop1 в каком-то другом классе, как показано ниже:
public class Demo
{
public void testMethod()
{
myClass ref = null;
ref.prop1 = 1; //This line throws error
}
}
выше строки выдает ошибку, потому что ссылка класса myClass объявлена, но не создана, или экземпляр объекта не назначается referecne этого класса.
Чтобы исправить это, вам нужно создать экземпляр (присвоить объект ссылке на этот класс).
public class Demo
{
public void testMethod()
{
myClass ref = null;
ref = new myClass();
ref.prop1 = 1;
}
}
Я знаю, что это старый вопрос, но он появился первым в моем поиске Google по этому же вопросу, хотя я знал ответ, который я просто хотел, чтобы что-то копировать и вставлять. Что делает его полезным для дальнейшего ответа. Итак, вот что работает для меня:
Установите rtools , затем:
install.packages(path_to_file, repos = NULL, type="source")
Два ответа, которые могут помочь вам избежать проблем с установкой Rtools.
install.packages(...,repos=NULL)
) src
каталога с C, C ++ или Fortran код, который необходимо скомпилировать во время установки (не верно для forecast
, но, возможно, полезно в другое время), а затем просто указать type="source"
в вызове install.packages
(будь то из репозитория или локальной копии исходного tarball (.tar.gz
)) установит исходный пакет даже в Windows. Начните с просмотра раздела в пакетах Windows в руководстве R Installation and Administration , затем внимательно следуйте инструкциям из Приложение Windows toolet .
Я знаю, что обычно это плохая форма, чтобы в основном предоставлять ссылки в ответе, но это ссылки на канонические ссылки на эту тему. Я просто ссылаюсь на них, а не суммирую их содержимое, поскольку они должны быть точными для самой последней версии R.
Я не уверен, что это лучший способ, но я нашел следующий метод для работы (частично основанный на ответах выше):
1) Загрузите пакет .tar
2) Переместите пакет в каталог с вашими пользовательскими R-библиотеками (например, в моем случае это было «C: /Users/yourUserName/Documents/R/win-library/3.3»)
3) В Rstudio (или где-то еще, возможно), запустите команду ... install.packages("packageName.tar", repos=NULL, type="source")
Это работало для меня как минимум. Надеюсь, это полезно!