[英]R CMD build skips knitr/Rmd vignettes - “Output(s) listed in 'build/vignette.rds' but not in package”
我已經為R軟件包構建了rmarkdown教程,並希望在構建軟件包時包括已編譯的文件。 盡管文件編譯愉快(包括使用R CMD Sweave
進行編譯時),但似乎無法將其包含在二進制文件中。
具體來說,當我運行R CMD BUILD
我得到
* checking for file ‘./DESCRIPTION’ ... OK
[snip]
* installing the package to build vignettes
* creating vignettes ... OK
* checking for empty or unneeded directories
Removed empty directory ‘rentrez/inst/doc’
Removed empty directory ‘rentrez/inst’
Removed empty directory ‘rentrez/vignettes/assets’
Removed empty directory ‘rentrez/vignettes’
* building ‘rentrez_0.2.4.tar.gz’
但是,在安裝了此二進制文件並運行了vignette(package="rentrez")
之后,該程序包就沒有任何vignette(package="rentrez")
。
那么,我在做什么錯呢?
如果有幫助,則該庫的此分支包含小插圖以及對該程序包的相關編輯。 該文件本身位於vignettes/
目錄中,並以
<!--
%\VignetteEngine{knitr::knitr}
%\VignetteIndexEntry{rentrez tutorial}
-->
Description文件包含以下幾行
Suggests:
testthat,-
VignetteBuilder: knitr
編輯
我應該考慮在內置軟件包上運行R CMD CHECK
:
Output(s) listed in 'build/vignette.rds' but not in package:
‘inst/doc/rentrez_vignette.html’
據我所知, build/vignette.rds
是由R CMD BUILD
創建的,但我不解釋為什么它指向inst/doc
(即使在構建軟件包之前刪除了該目錄)
問題是,你有rentrez_*
您.Rbuildignore
和你的小插曲的名稱相匹配。 .Rbuildignore
行應該看起來像
^staticdocs$
不
staticdocs
您應該刪除inst/doc/
。 所有小插曲都應僅在vignettes/
下。 要記住的另一件事是,您應僅將源文檔保留在vignettes
下,並且所有生成的文件都不應位於其中,例如HTML輸出。 盡管肯定不是最好的例子,但是您始終可以檢查knitr如何構建自己的小插曲 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.