Eri*_*lts 7 r rscript roxygen2
我正在编写一个使用roxygen2自动对我的包进行氧气化的脚本.我希望它是可执行的,这样它就可以成为准备和安装软件包的一个更大的脚本的一部分,但由于某些原因我不能使它与Rscript一起工作.
这是代码:
#!/usr/bin/env Rscript
library(roxygen2)
roxygenize('.', copy=FALSE)
Run Code Online (Sandbox Code Playgroud)
如果我启动交互式R会话或使用R CMD BATCH提交代码,这可以正常工作.但是,如果我通过Rscript将脚本作为可执行文件直接运行,我得到此输出和错误(无论脚本是在当前目录还是bin中,我都会收到错误).
bin/roxygenize.R
Loading required package: digest
Warning message:
package 'roxygen2' was built under R version 2.13.2
Error in parse.files(r_files) : could not find function "setPackageName"
Calls: roxygenize -> parse.files
Execution halted
Run Code Online (Sandbox Code Playgroud)
看起来setPackageName在基数R中,所以我无法弄清楚为什么它不在那里.另外,我在许多其他情况下使用Rscript,这似乎是唯一失败的地方.
任何帮助深表感谢.
显式加载包装methods和utils装载前roxygen2和调用roxygenize().
#!/usr/bin/env Rscript
library(methods)
library(utils)
library(roxygen2)
roxygenize('.', copy=FALSE)
Run Code Online (Sandbox Code Playgroud)