替换renv步骤后,render-rmarkdown GitHub Action提示R包未找到的修复方案
修复GitHub Actions中pkgdown构建提示“找不到包”的问题
问题根源
r-lib/actions/setup-r-dependencies@v2 仅负责安装你的R包在DESCRIPTION中声明的依赖项,不会自动安装你正在开发的包本身。而pkgdown构建网站时需要加载并使用你的包,因此会触发“没有名为<my_package>的包”的错误。
修复步骤
在GitHub Actions workflow文件中,setup-r-dependencies步骤之后,添加一个安装你自己包的步骤:
方案1:使用基础R命令安装
- uses: r-lib/actions/setup-r-dependencies@v2 with: extra-packages: any::pkgdown needs: website # 添加这一步安装你的包 - name: Install the package run: R CMD INSTALL .
方案2:使用devtools安装(适合需要额外开发工具的场景)
- uses: r-lib/actions/setup-r-dependencies@v2 with: extra-packages: | any::pkgdown any::devtools needs: website # 添加这一步安装你的包 - name: Install the package run: | devtools::install(dependencies = FALSE) shell: Rscript {0}
补充说明
- 设置
dependencies = FALSE是因为setup-r-dependencies已经完成了依赖安装,重复安装会浪费时间。 - 如果你的包需要编译(比如包含C/C++代码),无需额外配置,r-lib的
setup-r动作会自动适配runner环境的编译工具链。
内容的提问来源于stack exchange,提问作者Michael Roswell
相关产品推荐
相关产品推荐

