ERROR: a 'NAMESPACE' file is required 的解决方案

来源:互联网 发布:c语言求质数用while 编辑:程序博客网 时间:2024/05/18 23:27

在利用R自己写一个R源文件的时候,具体参见上一篇博文,出现



解决方案相关网页:

http://stackoverflow.com/questions/17196225/error-a-namespace-file-is-required

http://stackoverflow.com/questions/10239213/working-with-package-without-namespace-in-r

http://questiontrack.com/error-a-39namespace39-file-is-required-1043658.html


总之观点是:由于较新的R版本需要NAMESPACE文件,不再支持生成默认的NAMESPACE


可以如此解决:直接自己新建一个不带任何后缀文件名为NAMESPACE 里面写

exportPattern("^[^\\.]")


也可如此解决:


roxygen2还实现了一些自动功能,比较重要的就是对命名空间文件NAMESPACE和描述文件DESCRIPTION的自动更新,这些我们第五节再说。先说如何从roxygen注释翻译到Rd文档,很简单:如果一个包已经按第二节的结构写好(不需要有man文件夹),函数和相应的roxygen注释都已经存在,那么用函数roxygenize()就可以把这样一个初级包翻译为一个完整R包了:



setwd('/a/b/c/')  # 先把工作目录切换到pkg之上library(roxygen2)roxygenize('pkg')
这样之后再 R CMD INSTALL 。。