为什么我会得到;检测到包HTTP“的不可满足要求”;尝试在Julia中添加绘图包时出错?
我正在使用juliav1.5.2并使用此代码添加Plots包为什么我会得到;检测到包HTTP“的不可满足要求”;尝试在Julia中添加绘图包时出错?,julia,plots.jl,Julia,Plots.jl,我正在使用juliav1.5.2并使用此代码添加Plots包 import Pkg Pkg.add("Plots") 我收到一条错误消息,如下所示。 我尝试重新安装Julia,也尝试了其他稳定版本(v1.0),但仍然收到相同类型的错误消息。我甚至尝试使用Pkg管理器而不是使用import-Pkg,但似乎也没有什么不同 ERROR: Unsatisfiable requirements detected for package HTTP [cd3eb016]: HTTP [
import Pkg
Pkg.add("Plots")
我收到一条错误消息,如下所示。我尝试重新安装Julia,也尝试了其他稳定版本(v1.0),但仍然收到相同类型的错误消息。我甚至尝试使用Pkg管理器而不是使用
import-Pkg
,但似乎也没有什么不同
ERROR: Unsatisfiable requirements detected for package HTTP [cd3eb016]:
HTTP [cd3eb016] log:
├─HTTP [cd3eb016] has no known versions!
└─found to have no compatible versions left with Pluto [c3e4b0f8]
└─Pluto [c3e4b0f8] log:
├─possible versions are: [0.2.0, 0.3.0-0.3.6, 0.4.0-0.4.3, 0.5.0-0.5.21, 0.6.0-0.6.4, 0.7.0-0.7.10, 0.8.0-0.8.10, 0.9.0-0.9.11, 0.10.0-0.10.13, 0.11.0-0.11.14, 0.12.0-0.12.3] or uninstalled
└─restricted to versions * by an explicit requirement, leaving only versions [0.2.0, 0.3.0-0.3.6, 0.4.0-0.4.3, 0.5.0-0.5.21, 0.6.0-0.6.4, 0.7.0-0.7.10, 0.8.0-0.8.10, 0.9.0-0.9.11, 0.10.0-0.10.13, 0.11.0-0.11.14, 0.12.0-0.12.3]
Stacktrace:
[1] propagate_constraints!(::Pkg.Resolve.Graph, ::Set{Int64}; log_events::Bool) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Resolve\graphtype.jl:1005
[2] propagate_constraints! at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Resolve\graphtype.jl:946 [inlined] (repeats 2 times)
[3] simplify_graph!(::Pkg.Resolve.Graph, ::Set{Int64}; clean_graph::Bool) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Resolve\graphtype.jl:1460
[4] simplify_graph! at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Resolve\graphtype.jl:1460 [inlined] (repeats 2 times)
[5] resolve_versions!(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:375
[6] targeted_resolve at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1114 [inlined]
[7] tiered_resolve(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1100
[8] _resolve at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1120 [inlined]
[9] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}, ::Array{Base.UUID,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.Windows) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1135
[10] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.Windows, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:188
[11] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:139
[12] #add#21 at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:67 [inlined]
[13] add at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:67 [inlined]
[14] #add#20 at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:66 [inlined]
[15] add at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:66 [inlined]
[16] add(::String; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:65
[17] add(::String) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:65
[18] top-level scope at REPL[19]:1
尝试删除冥王星
using Pkg
pkg"rm Pluto"
pkg"add Plots"
然后更新包:
pkg"update"
我现在还将尝试显式安装Http
,并检查其版本:
pkg"add HTTP"
pkg"status HTTP"
冥王星似乎至少需要HTTP
版本0.8.8
,这看起来没有什么特别之处。所以现在你应该可以重新安装冥王星了
pkg"add Pluto"
如果出了什么差错,请写下来。可以肯定的是,冥王星正在和阴谋一起工作。这是我的包裹状态(您可以提供类似信息):
有时,其他软件包可能会关闭所有版本。
]更新Pluto
(或导致此问题的依赖项的名称)
然后重试:]添加绘图
说明:
如果问题是由依赖项(此处为
Pluto
)引起的,限制为仅限于版本。。。通过明确的需求
,明确的需求很可能是由于依赖性(Pluto
)本身。因此,您只需在更新上游包(HTTP
或Plots
)之前独立地更新该依赖项(Pluto
):我删除了Pluto。更新后,我得到:“对C:\Users\\\.julia\environments\v1.5\Project.toml
和C:\Users\\.julia\environments\v1.5\Manifest.toml
没有更改。在尝试添加HTTP时,我收到了与上面帖子中相同的错误消息。另外,以下是我的状态:状态C:\Users\\.julia\environments\v1.5\Project.toml(空项目)状态C:\Users\\\.julia\environments\v1.5\Project.toml(空项目)状态C:\Users\.julia\environvironments\v1.5\Project.toml(空项目)
从外观上看,我认为我应该创建一个虚拟环境?这可能是问题吗?我解决了问题。我做了两件事,所以我不确定哪一件有效。1) 我将Users/中的.julia文件夹添加为windows安全性的排除文件夹。2) 我删除了相同的.julia文件夹,以管理员身份打开了julia应用程序,并在Pkg管理器中编写了update
。更新一些内容并重新创建.julia文件夹花了一两分钟。然后,我按照您的建议依次添加了HTTP、Plots和Pluto。它没有给出任何错误。删除.julia
文件夹有帮助。有时Julia包配置崩溃,唯一的方法就是恢复它。更新包为我修复了它。did:$julia
julia>]
pkg>更新
pkg>添加绘图
,它可以帮助您解决包冲突以及如何解决冲突,以供将来参考。
julia> Pkg.status.(["Pluto","HTTP","Plots"]);
Status `C:\JuliaPkg\Julia1.5.2\environments\v1.5\Project.toml`
[c3e4b0f8] Pluto v0.12.3
Status `C:\JuliaPkg\Julia1.5.2\environments\v1.5\Project.toml`
[cd3eb016] HTTP v0.8.19
Status `C:\JuliaPkg\Julia1.5.2\environments\v1.5\Project.toml`
[91a5bcdd] Plots v1.6.9