【发布时间】:2017-07-09 14:16:33
【问题描述】:
到目前为止,我一直在成功使用 travis-ci,但是在小插图构建步骤中使用带有 R 3.4.0 的 travis-ci 时遇到了问题,在“构建包”部分出现以下错误:
* installing the package to build vignettes
* creating vignettes ... ERROR
Error in loadVignetteBuilder(vigns$pkgdir) :
vignette builder 'knitr' not found
Calls: <Anonymous> -> loadVignetteBuilder
Execution halted
当我在本地运行 R-CMD-check 时,它通过并且我没有收到任何错误
这是当前的 .travis.yml
language: R
sudo: false
install:
- R -e "0" --args --bootstrap-packrat
cache:
directories:
- $TRAVIS_BUILD_DIR/packrat/src
- $TRAVIS_BUILD_DIR/packrat/lib
packages: true
r_packages:
- covr
after_success:
- Rscript -e 'library(covr); codecov()'
DESCRIPTION 中包含晕影线:
VignetteBuilder: knitr
knitr 也在我的 packrat.lock 文件中,packrat 用于构建 .travis.yml。
我尝试了以下方法无济于事:
- 将 knitr 添加到 .travis.yml 中的 r_packages
- 在说明中的导入中添加了 knitr
- 已将
r_check_args: "--no-vignettes"添加到 travis.yml,希望跳过小插图构建步骤。 - 在 travis.yml 中添加了从
install到before_install的 packrat 调用
我非常了解构建 R 包,更不用说 travis-ci,所以我不确定我是否理解为什么小插图生成器无法访问 knitr 包。
回购:https://github.com/cormac85/datakindr
特拉维斯:https://travis-ci.org/cormac85/datakindr
【问题讨论】:
-
所以最后我通过从 .travis.yml 中删除 packrat 配置得到了build to pass。 Travis R Documentation 中建议了此配置,但在我的构建过程中不适用于 loadVignetteBuilder() 步骤。如果有人仍在查看此内容,请您评论一下这是否看起来像是我的构建所特有的问题,或者它是否更普遍且值得在Travis-CI Github page? 上提出问题