“不完整的文件块”是什么意思?

我正在使用RStudio,并试图使用我当前项目的packrat。 我点击复选框“Use this packrat with this project”,然后按OK,我从控制台得到以下输出:

    > packrat::init()
Initializing packrat project in directory:
- "/Users/Ash/Dropbox/Uni/2014/Thesis/Code/R"

Adding these packages to packrat:
            _         
    packrat   0.4.0.12

Fetching sources for packrat (0.4.0.12) ... Error in snapshotSources(project, activeRepos(project), allRecordsFlat) : 
  Errors occurred when fetching source files:
Error in untar2(tarfile, files, list, exdir, restore_times) : 
  incomplete block on file

我找不到这个错误,但基于这个代码(搜索错误字符串,文件中的不完整的块),它似乎涉及到一个意外的文件长度/大小。

我认为下载可能会损坏? 但我已经尝试了多次。

或者,也许我没有正确的权限? 但是这里的项目文件应该没有问题。

有其他人有这个问题吗?


我认为下载可能会损坏? 但我已经尝试了多次。

是。 下载可能会损坏,或者根据R帮助邮件列表中的此线程,问题可能是由服务器本身上的损坏包引起的。 在后一种情况下,可以通过选择用于下载软件包的不同镜像来解决。

注意我将描述一个解决方案,它使用R控制台而不是Rstudio GUI,因为我曾经以这种方式安装软件包。 所描述的方法可能也适用于GUI的软件包安装。

通过执行以下命令从R控制台安装软件包时:

> install.packages("<package_name>")

您将看到可供选择的镜像列表:

 1: 0-Cloud [https]                2: Austria [https]
 3: Chile [https]                  4: China (Beijing 4) [https]
 ...

只需选择另一个(最好靠近您的位置以便更快下载)。


如果您没有提供这种选择,但立即开始下载,则会配置默认镜像(例如,Rstudio会自动将https://cran.rstudio.com/设置为默认镜像)。 您可以通过发出以下命令来检查选定的镜像

> getOption("repos")["CRAN"]
                       CRAN
"https://cran.rstudio.com/"

要重置默认镜像,您可以使用以下命令:

> r <- getOption("repos")
> r["CRAN"] <- "@CRAN@"
> options(repos=r)

现在,当您尝试安装新软件包时,您可以选择上面描述的另一个镜像。

链接地址: http://www.djcxy.com/p/22475.html

上一篇: What does "incomplete block on file" mean?

下一篇: colormap, always centered on zero