无法在 Julia 中安装任何包
Cannot install any package in Julia
几个月前我在一个项目中使用过 Julia,此后就没有再使用过它。那时我没有遇到问题。但是现在,我绝对无法安装任何包。
(@v1.5) pkg> add Distributions
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package Distributions [31c24e10]:
Distributions [31c24e10] log:
├─Distributions [31c24e10] has no known versions!
└─restricted to versions * by an explicit requirement — no versions left
我安装的任何软件包都出现相同的错误。我该如何解决?
这是 Pkg 的状态:
(@v1.5) pkg> status
Status `C:\Users\jaine\.julia\environments\v1.5\Project.toml`
[6e4b80f9] BenchmarkTools v0.5.0
[7073ff75] IJulia v1.21.2
[91a5bcdd] Plots v1.6.0
[438e738f] PyCall v1.91.4
[d330b81b] PyPlot v2.9.0
[2913bbd2] StatsBase v0.33.0
这些确实是一些需要解决的更棘手的情况,所以在我们解决这个问题时请耐心等待。
如果您不熟悉包管理器的基础知识,值得快速阅读一下:https://julialang.github.io/Pkg.jl/v1/getting-started/
假设您现在在 Julia Repl 中,我针对这些问题的一般工作流程是删除它警告我的所有内容。这里的核心问题是您现有的一个包说它需要一个特定版本的 Distributions.jl 但它无法添加它。因此,第一步是通过执行 ]
并输入 rm Distributions
.
来进入 pkg 管理器
然后,在 pkg 模式下,执行 resolve
和 add Distributions
。
所以这个过程只是删除 Repl 抱怨的每个包,直到它停止抱怨。
注意:如果您再次 运行 遇到这样的事情,最坏的情况 情况是删除您所使用的特定 Julia 版本的项目和清单文件使用。如果您导航到“.julia/environments”,您应该能够在那里为特定版本完全重置 Julia Env(这样您就不需要实际重新安装 Julia)。
给出
├─Distributions [31c24e10] has no known versions!
您似乎缺少或损坏了包注册表。如果您删除 .julia/registries
并尝试再次添加包,包管理器将为您重新安装它。
您可以在 julia
中执行此操作
rm(joinpath(homedir(), ".julia", "registries"), recursive=true, force=true)
几个月前我在一个项目中使用过 Julia,此后就没有再使用过它。那时我没有遇到问题。但是现在,我绝对无法安装任何包。
(@v1.5) pkg> add Distributions
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package Distributions [31c24e10]:
Distributions [31c24e10] log:
├─Distributions [31c24e10] has no known versions!
└─restricted to versions * by an explicit requirement — no versions left
我安装的任何软件包都出现相同的错误。我该如何解决?
这是 Pkg 的状态:
(@v1.5) pkg> status
Status `C:\Users\jaine\.julia\environments\v1.5\Project.toml`
[6e4b80f9] BenchmarkTools v0.5.0
[7073ff75] IJulia v1.21.2
[91a5bcdd] Plots v1.6.0
[438e738f] PyCall v1.91.4
[d330b81b] PyPlot v2.9.0
[2913bbd2] StatsBase v0.33.0
这些确实是一些需要解决的更棘手的情况,所以在我们解决这个问题时请耐心等待。
如果您不熟悉包管理器的基础知识,值得快速阅读一下:https://julialang.github.io/Pkg.jl/v1/getting-started/
假设您现在在 Julia Repl 中,我针对这些问题的一般工作流程是删除它警告我的所有内容。这里的核心问题是您现有的一个包说它需要一个特定版本的 Distributions.jl 但它无法添加它。因此,第一步是通过执行
来进入 pkg 管理器]
并输入rm Distributions
.然后,在 pkg 模式下,执行
resolve
和add Distributions
。
所以这个过程只是删除 Repl 抱怨的每个包,直到它停止抱怨。
注意:如果您再次 运行 遇到这样的事情,最坏的情况 情况是删除您所使用的特定 Julia 版本的项目和清单文件使用。如果您导航到“.julia/environments”,您应该能够在那里为特定版本完全重置 Julia Env(这样您就不需要实际重新安装 Julia)。
给出
├─Distributions [31c24e10] has no known versions!
您似乎缺少或损坏了包注册表。如果您删除 .julia/registries
并尝试再次添加包,包管理器将为您重新安装它。
您可以在 julia
rm(joinpath(homedir(), ".julia", "registries"), recursive=true, force=true)