R在R CMD检查期间引用不存在的文件

时间:2018-02-09 16:14:18

标签: r build package rstudio sweave

我希望R CMD check使用RStudio我的包(对于这个问题,我称之为pkg)。但是我收到以下错误消息:

* preparing 'pkg':
* checking DESCRIPTION meta-information ... OK
* installing the package to build vignettes
* creating vignettes ...Error in find_vignette_product(name, by = "weave", dir = docdir, engine = engine) : 
  Failed to locate the 'weave' output file (by engine 'utils::Sweave') for vignette with name 'my-vignette'. The following files exist in directory 'C:/Users/name/AppData/Local/Temp/RtmpQLnSjE/Rbuild244434d45c05/pkg/vignettes': 'my-vignette.R', 'my-vignette.Rmd'
Execution halted
Error: Command failed (1)
In addition: Warning message:
`cleanup` is deprecated 
Execution halted

Exited with status 1.

首先,可能出现问题的是我的RtmpQLnSjE目录中没有名为C:/Users/name/AppData/Local/Temp/的文件夹。手动运行我的Rmd文件不会产生任何错误。

我将RStudio更新到最新版本1.1.423,这是我的SessionInfo()

R version 3.4.3 (2017-11-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

Matrix products: default

locale:
[1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252    LC_MONETARY=German_Germany.1252
[4] LC_NUMERIC=C                    LC_TIME=German_Germany.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] MCMCglmm_2.25 ape_5.0       coda_0.19-1   lme4_1.1-15   Rcpp_0.12.15  Matrix_1.2-12 hmi_0.9.4    

loaded via a namespace (and not attached):
 [1] lattice_0.20-35 corpcor_1.6.9   digest_0.6.15   withr_2.1.1     MASS_7.3-48     grid_3.4.3     
 [7] nlme_3.1-131    cubature_1.3-11 minqa_1.2.4     nloptr_1.0.4    devtools_1.13.4 splines_3.4.3  
[13] tools_3.4.3     yaml_2.1.16     parallel_3.4.3  compiler_3.4.3  memoise_1.1.0   tensorA_0.36 

2 个答案:

答案 0 :(得分:1)

作为答案结束:

  

无法找到'编织'输出文件

此错误可能有多个根本原因,并且不容易追溯。但是,它很可能与插图内的代码相关,特别是代码导航目录等(例如setwd()或其他可能依赖于独立运行和参与度越高R CMD check

答案 1 :(得分:0)

我最近遇到了这个,因为小插图文件的名称中有一个空格(比如“我的小插图.Rmd”)。它正在创建一个名为 My-Vignette.html 的 html 文件。我认为是名称中的连字符引起了问题(基于上面的答案以及我所看到的。)