[英]R package: install dependencies recursively
我正在尝试使用 devtools(更准确地说是install_github
)从 Github 安装我的 R 包之一。 但是,即使我将参数dependencies
设置为TRUE
,也不会递归安装依赖项。 也就是说,没有安装依赖项的依赖项。 因此,未安装该软件包。 R 发送一条消息,说它找不到这些依赖项之一。 它一直发送这些消息,直到我安装了所有东西。
这是标准行为吗? 或者我错过了什么? 我正在谈论的包是这个: https : //github.com/pedrocostaferreira/BETS 。
我在安装其他人的软件包时从未遇到过这个问题。 由于我的包有几个导入和建议,我的用户手动一个一个地安装每个依赖项真的很烦人。 我该怎么办?
描述文件的片段:
Depends:
R (>= 3.2.0)
Imports:
testthat (>= 0.9.1),
rootSolve,
ggplot2,
plotly,
urca,
TTR,
forecast,
TSA,
FinTS,
fpp,
stringi,
sqldf,
foreign,
lmtest,
normtest,
zoo,
rugarch,
colorspace,
fracdiff,
tseries,
timeDate,
htmlwidgets,
quadprog,
Rcpp,
gtable,
scales,
viridis
Suggests:
grnn,
Rsolnp,
numDeriv,
spd,
ks,
SkewHyperbolic,
expm,
DBI,
RSQLite,
gsubfn,
tidyr,
dygraphs,
munsell,
plyr,
rmarkdown,
nloptr,
chron,
gridExtra,
xts
确实很大吧?
有人建议,如果该软件包已经在 CRAN 上,则不会发生。 是否有意义?
问题是DESCRIPTION
和NAMESPACE
不一致。 许多包进口的NAMESPACE
,这需要他们在Imports
或Depends
的字段DESCRIPTION
。 但是,它们列在“ Suggests
下,这意味着它们是可选的,因此不会自动安装。 但是您的软件包在工作之前确实需要安装它们。
方法1:将所有包移动到DESCRIPTION
Imports
,然后devtools
应该安装它们。
方法 2:如果您确实不需要所有这些用于某些用途,并且您不想全部安装它们,请不要在NAMESPACE
导入它们。 请改用全限定名称package::functionname
。
阅读Hadley 的书 R 包的命名空间章节以获取更多详细信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.