Зависимости пакетов при установке из исходного кода в R
Просто подтверждаю: если я распространяю свой пакет R как ZIP / TAR, то установка пакета не будет автоматически загружать / устанавливать зависимости, потому что я должен установить repos = NULL
в install.packages()
, а параметр dependencies не используется, если repos = NULL
? Возможно, чтобы это сработало, нужно упаковать сценарий установки. Разве это возможно? Может быть, я полностью упустил что-то здесь, и есть механизм для установки из исходного кода и автоматической загрузки и установки зависимостей?
4 ответа:
Вы можете создать свой собственный репозиторий и задать
repos
в качестве вектора мест для поиска пакетов, где он будет начинаться с вашего собственного репозитория, а затем включать ссылку на зеркало CRAN. Это то, что я делаю, и это работает довольно хорошо, так как тогда я могу легко делиться своими пакетами с другими и обновлять их с любого компьютера, на котором я нахожусь.
Пакет
devtools
имеет функциюinstall
. Если он используется в каталоге, содержащем исходный код пакета R, он установит этот пакет и загрузит все зависимости из CRAN.
Вы можете использовать
devtools::install_local(path)
Он может автоматически загружать все зависимости.
Если у вас есть GitHub учетная запись myname, переместите свой пакет R в репозиторий mypackage. Тогда просто позвоните
devtools::install_github("myname/mypackage")
. Пакет mypackage будет загружен и установлен, как и все зависимости, перечисленные в разделе Imports в файле DESCRIPTION.