在为julia初始化软件包存储库时,我遇到了以下错误
julia> Pkg.init() INFO: Initializing package repository /home/pauli/.julia/v0.5
INFO: Cloning METADATA from https://github.com/JuliaLang/METADATA.jl
ERROR: GitError(Code:ERROR, Class:Net, SSL error: unknown error)
in macro expansion at ./libgit2/error.jl:99 [inlined]
in clone(::String, ::String, ::Base.LibGit2.CloneOptions) at ./libgit2/repository.jl:191
in #clone#109(::String, ::Bool, ::Ptr{Void}, ::Nullable{Base.LibGit2.AbstractCredentials}, ::Function, ::String, ::String) at ./libgit2/libgit2.jl:327
in (::Base.LibGit2.#kw##clone)(::Array{Any,1}, ::Base.LibGit2.#clone, ::String, ::String) at ./<missing>:0 in (::Base.Pkg.Dir.##4#6{String,String})() at ./pkg/dir.jl:49
in cd(::Base.Pkg.Dir.##4#6{String,String}, ::String) at ./file.jl:5
in init(::String, ::String) at ./pkg/dir.jl:47 in init() at ./pkg/pkg.jl:70
到目前为止我尝试了什么
跑
git config --global url."https://".insteadOf git://
并得到与上述相同的结果。
代理不是问题,因为我可以成功运行git clone。
下载了metadata.jl的zipped git repo并复制到$ HOME / user / .julia / v0.5并出现以下错误
ERROR: GitError(Code:ENOTFOUND, Class:Repository, Could not find repository from '/home/pauli/.julia/v0.5/METADATA')
in Base.LibGit2.GitRepo(::String) at ./libgit2/repository.jl:11
in init(::String, ::String) at ./pkg/dir.jl:40
in init() at ./pkg/pkg.jl:70
如何解决此问题?我应该在哪里放置这个metadata.jl文件夹?
答案 0 :(得分:0)
当您的METADATA存储库与大多数人最常使用的存储库不同时,将使用Pkg.init(备用METADATA.jl存储库URL ,可选分支名称)时间。备用METADATA存储库必须存在并指定为Pkg.init()的第一个参数。没有参数的Pkg.init()
不会给出备用METADATA存储库的位置。该文档可在Custom METADATA Repository获得。
如果您正在开发新包,可以使用更简单的方法 Pkg.generate( “NewPackageName”, “MIT”) 在这种情况下,这将创建适当的脚手架(机器特定路径)/。julia / v0.5 / NewPackageName,您可以在该目录中开始编码。在您选择注册之前,其他人不会知道您的包裹。请参阅文档Generating a package。
您无需下载默认METADATA.jl的副本。安装Julia并经常执行Pkg.update()
为您解决这个问题。如果您的整个配置出现乱码,最好删除(删除)它并重新安装Julia。