You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

办公防火墙下Julia Pkg.update()及LibGit2证书验证问题求助

解决Julia 0.6.2办公防火墙下Pkg操作的Git证书验证问题

我之前也碰到过类似的办公防火墙环境下Julia包管理卡壳的情况,尤其是0.6.x版本的LibGit2模块,有时候确实不会自动读取全局.gitconfig里的sslVerify=false配置,导致Pkg操作失败。给你几个亲测有效的解决思路:

1. 直接在Julia中配置LibGit2参数

打开Julia REPL,执行以下代码,直接给LibGit2的全局配置注入所需的代理和SSL验证设置:

using LibGit2
# 禁用SSL证书验证
LibGit2.set_config(LibGit2.GlobalConfig(), "http.sslVerify", "false")
# 设置代理地址
LibGit2.set_config(LibGit2.GlobalConfig(), "http.proxy", "127.0.0.1:3128")
# 替换git://协议为https://
LibGit2.set_config(LibGit2.GlobalConfig(), "url.https://.insteadOf", "git://")

执行完这些后,再尝试Pkg.update()或者Pkg.add(),应该能绕过证书验证的问题。

2. 让Julia启动时自动加载配置

如果不想每次启动Julia都手动输一遍上面的代码,可以把配置加到Julia的启动脚本里:

  • 找到用户目录下的.juliarc.jl文件(如果没有就新建一个)
  • 在文件中添加以下内容:
    using LibGit2
    LibGit2.set_config(LibGit2.GlobalConfig(), "http.sslVerify", "false")
    LibGit2.set_config(LibGit2.GlobalConfig(), "http.proxy", "127.0.0.1:3128")
    LibGit2.set_config(LibGit2.GlobalConfig(), "url.https://.insteadOf", "git://")
    

这样每次启动Julia,这些配置都会自动生效。

3. 给Julia包仓库单独设置Git配置

Julia的包都存放在~/.julia/v0.6目录下,我们可以直接给这个目录下的Git仓库单独配置参数:
打开终端,执行以下命令:

cd ~/.julia/v0.6
# 禁用当前仓库的SSL验证
git config http.sslVerify false
# 设置代理
git config http.proxy 127.0.0.1:3128
# 替换协议
git config url.https://.insteadOf git://

这个方法相当于直接给Julia包管理的核心仓库设置Git规则,能确保Pkg操作时使用正确的配置。

4. 检查代理环境变量是否传递给Julia

有时候Julia进程没拿到代理环境变量也会出问题,你可以先在终端设置环境变量,再启动Julia:

export http_proxy=http://127.0.0.1:3128
export https_proxy=http://127.0.0.1:3128
export NO_PROXY=localhost,127.0.0.1
# 启动Julia
julia

之后再尝试Pkg操作,配合前面的SSL验证设置,应该能解决问题。

另外提一句,Julia 0.6.2确实比较老旧了,LibGit2的集成存在一些已知问题,如果后续环境允许,升级到1.6.x这类LTS版本会减少很多这类兼容性问题。

内容的提问来源于stack exchange,提问作者branden_burger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:09:59