概述
- Att: R 包开发中遇到的坑。
- Date: 2018-12-06
错误描述
最近在为公司开发一个R的工具包,在新增了一些功能之后,使用devtools::document()生成.Rd文件时报错,如下,从错误信息上看感觉是权限问题。
> devtools::document()
Updating pkt documentation
Writing NAMESPACE
Loading pkt
Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") :
cannot open file 'E:r-windowsstage_2pkt': Permission denied
解决过程
1 权限
由于从错误上看似乎是文件夹写入权限问题,于是各种折腾,并不能解决问题。
2 stack overflow
通过搜索错误信息,得到stack overflow上的相似错误:
https://github.com/klutometis/roxygen/issues/766
大致原因是roxygen2的bug, 按照解决方案:
devtools::install_github("gustavdelius/roxygen")
并不能解决问题。尝试反复卸载安装roxygen2的各种版本,不能解决问题。
3 手动排查
新建一个包工程,逐步将原有工程中的脚本移进来,终于定位错误源头:
#' Create yik
#'
#' @example
#'
#' @family report
yik <- function(){
}
在@example
块后漏加了示例对应的代码,将这行去掉,问题解决:
> devtools::document()
Updating pkt documentation
Loading pkt
Writing NAMESPACE
Writing yik.Rd
总结
roxygen2
的错误信息实在是太隐晦。
最后
以上就是现代蜜粉为你收集整理的document error: cannot open the connection的全部内容,希望文章能够帮你解决document error: cannot open the connection所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复