我是第一次在一个项目上试用renv
.我在本地将snapshot()
设置得很好,现在我正在为该项目构建一个docker映像,但遇到了几个包的问题.
该项目有很多依赖项,几乎所有依赖项都可以顺利安装,但特定版本的data.table
抛出了一个错误:
#19 379.3 - Downloading data.table from CRAN ... ERROR [downloaded length 0 != reported length 166]
#19 380.5 Warning: failed to find source for 'data.table 1.14.6' in package repositories
#19 380.5 Warning: error downloading 'https://packagemanager.posit.co/cran/__linux__/jammy/latest/src/contrib/Archive/data.table/data.table_1.14.6.tar.gz' [downloaded length 0 != reported length 166]
#19 380.5 Error: failed to retrieve package 'data.table@1.14.6'
renv.lock
文件中的条目为:
"data.table": {
"Package": "data.table",
"Version": "1.14.6",
"Source": "Repository",
"Repository": "CRAN",
"Requirements": [
"R",
"methods"
],
"Hash": "aecef50008ea7b57c76f1cb5c127fb02"
},
嗯,data.table
的当前版本是1.14.10,所以我更新了,在下一个版本中进行了很好的更新,但它让我有点担心renv
对于旧的包版本的可靠性.如果指定的包版本不可用,并且必须更新,则会 destruct 可重现环境的目的.当我访问posit's package manager web client时,它在存档中列出了data.table
1.14.6,那么为什么它没有安装呢?
值得注意的是,我根本没有手工编辑过这renv.lock
本书.当前(正在处理的)条目如下.其中是否有我应该判断的特定项目?(可能是存储库?)
"data.table": {
"Package": "data.table",
"Version": "1.14.10",
"Source": "Repository",
"Repository": "RSPM",
"Requirements": [
"R",
"methods"
],
"Hash": "6ea17a32294d8ca00455825ab0cf71b9"
},