Go下载依赖包失败的解决方法

jenkins构建job,执行go test命令报如下图的timeout错误

从报错信息中可以看出是因为下载依赖包超时

解决方法:

go env查看go环境变量

GOSUMDB=sum.golang.org,用于验证包的有效性,但是由于这个网站被墙了,所以报timeout

可以通过如下命令关闭:

go env-w GOSUMDB=off

也可以设置 GOSUMDB="sum.golang.google.cn", 这个是专门为国内提供的sum 验证服务

或者通过修改环境变量文件.bash_profile

  • vi .bash_profile
  • 更改
  • source .bash_profile

再次go env查看,改变已生效

改完后,在窗口和jenkins job都试一下(执行go test命令),结果窗口可以,jenkins job依然不行。

真可谓是一坑刚平,一坑又起,因为在slave机器上修改了环境变量文件.bash_profile,是不是jenkins job没有感知到环境变量的更改?

在shell脚本头部加入一行source /Users/xes/.bash_profile,及在执行go test命令前先加载一下环境变量

再次构建jenkins job,成功!

 

posted @ 2020-11-02 14:25  海布里Simple  阅读(2704)  评论(0编辑  收藏  举报