2016-05-17 28 views
1

我试图在茱莉亚上添加新套件。包裹的名称是DataFrames.jl。要添加此软件包,我已经运行了Julia,只需输入Pkg.add("DataFrames")即可。不幸的是,当我这样做,我得到了以下错误:无法在茱莉亚上添加新套件

julia> Pkg.add("DataFrames") 
error: bad index file sha1 signature 
fatal: index file corrupt 
ERROR: failed process: Process(`git --work-tree=~/theuserxxx/.julia/v0.4/METADATA --git-dir=~/theuserxxx/.julia/v0.4/METADATA/.git update-index -q --really-refresh`, ProcessExited(128)) [128] 
in run at ./process.jl:531 
in success at pkg/git.jl:30 
in add at pkg/entry.jl:54 
in add at pkg/entry.jl:73 
in anonymous at pkg/dir.jl:31 
in cd at file.jl:22 
in cd at pkg/dir.jl:31 
in add at pkg.jl:23 

Morever,每当我试图更新现有的包,我也得到了同样的错误:

julia> Pkg.update() 
INFO: Updating METADATA... 
error: bad index file sha1 signature 
fatal: index file corrupt 
ERROR: failed process: Process(`git pull --rebase -q`, ProcessExited(128)) [128] 
in pipeline_error at process.jl:555 
in run at process.jl:531 
in anonymous at pkg/entry.jl:283 
in withenv at env.jl:160 
in anonymous at pkg/entry.jl:282 
in cd at ./file.jl:22 
in update at ./pkg/entry.jl:272 
in anonymous at pkg/dir.jl:31 
in cd at file.jl:22 
in cd at pkg/dir.jl:31 
in update at ./pkg.jl:45 

是否有任何人谁可以帮我解决这个问题?目前,我正在使用julia 0.4.5,但是在我转移到0.4.5之前,这个问题就已经出现了。

回答

3

虽然听起来很愚蠢,但最好的办法是删除您的METADATA文件夹,然后重新运行Pkg.add("DataFrames")命令。当然,这会删除您之前下载的所有软件包,因此您必须重新安装。

显然,如果您的目录中有未注册的软件包没有备份到GitHub上,请不要清除您的目录。但是当你遇到像这样的错误时,往往是因为你本地计算机上的元数据库回复出了问题。