我正在 Rstudio 上构建我的 R 包,我正在运行 R CMD 检查我的包。但是,R CMD 检查会警告一些可能导致错误的问题。我检查了我的项目主目录,确实有一些文件被隐藏了,现在我将它们设置为可见。出于好奇,如何在我的包目录中停止存在 .gitignore, .Rproj.user, .git
? R CMD 检查提示这些,因为这些文件不是包的属性,也不是 R 包结构约定。我怎样才能摆脱我的包裹中的这些警告?我试图在我的机器上创建虚拟包,但这些属性总是显示在包主目录中,为什么在使用 Rstudio 构建 R 包时会发生这种情况?如何修复此 CMD 检查错误?有什么想法吗?
根据编写 R 扩展手册,R 包结构应该是:
myPackage
`- inst
`- extdata
`- data1.csv
`- data2.csv
`- R
`- ...
`- NAMESPACE
`- man
`-hello.Rd
`- DESCRIPTION
- 备注:
这是R CMD检查的session,部分报错信息如下:
找到以下可执行文件: .git/对象/00/bc868b99806415c87749e4a2e060f99eb811da .git/对象/01/10cc76aa5573ca9401e72b36ad3672b39f23cb .git/objects/01/5c9910f52a0560426a1b00e1e31e1f060afdfb .git/objects/03/0ca1ef161838ebeb6a225f354a6a8eec95e472 .... ...
.git/objects/fd/6439dfc6532e7e3a76e76b3e4ca4fd683b2c5e
.git/objects/fd/ebc184b447002ee6239231093eb026b9bb3aec
.git/objects/fe/02f64dd278d70ff2e5fb212834d131bc23fddb
.git/objects/ff/15763b397945d0ee2e2523eab1bfd460f84529
.git/objects/ff/5413a4dc5f2710fe30ad14f4eb10992ad5aee4
.git/objects/ff/b8e86c018008d3cee09871f76df3a7277cb1c7
Source packages should not contain undeclared executable files.
See section 'Package structure' in the 'Writing R Extensions' manual.
* checking for hidden files and directories ... NOTE
Found the following hidden files and directories:
.gitignore
.Rproj.user
.git
These were most likely included in error. See section 'Package
structure' in the 'Writing R Extensions' manual.
inst/必须在我的包主目录中创建,但我在构建包时没有此属性。为什么我错过了这个目录?谁能指出我如何解决这个问题?如何修复此 CMD 检查错误?提前致谢:)
最佳答案
您(很可能)做错了。执行以下操作:
cd ..
R CMD build yourDirectory/
R CMD check yourPackage_0.1.0.tar.gz
因为源 tarball 的创建将自动排除您想要跳过的内部目录。这就是为什么检查 tarball(而不是目录)是推荐和记录的方法。
请注意,在 RStudio 中,Build 标签中的选项称为“检查”,它就是这样做的:首先创建一个 tarball(在可能运行 roxygen 或配置的其他步骤之后),然后为您检查 tarball。这就像单击一个按钮或键入 Ctrl-Shift-E(在我的平台上)一样简单。
可以通过 .Rbuildignore
文件更好地控制要排除的其他文件,该文件告诉 R 要跳过哪些其他文件。许多文件和目录已经以这种方式隐式声明,包括 git 目录。
关于R CMD 检查错误 : how to get rid of hidden files and directory in devel R package on windows?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40950799/