【发布时间】:2015-08-10 04:24:47
【问题描述】:
我正在 GitHub 上创建一个 R 包,LW1949,它依赖于 GitHub 上的另一个 R 包,jvamisc。当我尝试使用
安装 LW1949require(devtools)
devtools::install_github("user/LW1949")
我收到消息:Skipping 1 packages not available: jvamisc。
如何将 LW1949 包(在 NAMESPACE 中)的 import(jvamisc) 部分指向 Github 而不是 CRAN 以查找此依赖项?
这个问题之前肯定有人问过和回答过,但是我没有成功搜索(可能是因为搜索词太常见了——R、package、GitHub等)。我确实偶然发现了Travis CI 和Packrat,我都没有使用过。不知道他们是否会提供帮助。我希望尽可能简单的修复。 (我们都不会吗?)
我在 R Studio 版本 0.98.1103 中使用 R 版本 3.1.3 for Windows。
【问题讨论】:
-
类似的问题刚刚在 r-pkg-devel 上提出。如果您在 github 上创建一个 drat 存储库,您显然可以在您的 DESCRIPTION 文件的
Additional_repositories字段中指定它。 -
嗨,让。很高兴在 SO 上见到你。当存在相互依赖的 CRAN 和 BioC 包的混合时,还需要附加设施选项,但现在您可以在选项中指定 repos 的搜索列表:
options("repos")另请参阅?setRepositories -
您可能希望分叉项目并链接到您的包中的项目...以防原始用户以破坏您的包的方式删除/更改它。
-
您可以查看drat 包,它使创建存储库和从存储库安装都很容易。
-
@NealFultz 这似乎仅用于
R CMD check目的,请参阅r-ext。我已经尝试为 gh package on drat 设置它,导入另一个 gh package on drat 和其他一些在 CRAN 上。它没有使用Additional_repositories元数据,而是抛出dependencies not available错误。