在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
jenkins执行shell编译go代码时,全部报错: build cache is required, but could not be located: GOCACHE is not defined and neither $XDG_CACHE_HOME nor $HOME are defined 执行go env 没用信息显示,也是上面的报错。 但是,在jenkins机器上执行shell编译go代码和执行go env 都可以正常运行 只要jenkins调用就不生效了
原因:jenkins 执行shell有时候不能全部读取到机器上的环境变量。 解决: 在jenkins 机器上执行 go env > go_env 将go env用到的环境变量写入到文件go_env (这个文件名可以随便定义) 然后再执行 sed -i ‘s/^/export /' go_env 在每一行的行首加入export 然后备份下你自己的~/.bashrc : cp ~/.bashrc bashrc_bak 防止待会改坏了 然后将go_env追加到~/.bashrc中: cat go_env >> ~/.bashrc 最后执行source ~/.bashrc 让环境变量生效 如果不放心的话 在jenkins要执行的脚本中也加上 source ~/.bashrc 这一句。 另外,在尝试上面的步骤之前我还在/etc/profile中加入了GOROOT环境变量,不知道这个步骤有没有用到,如果你在操作了上面的步骤后还是失败的,可以尝试加一下,并source下这个文件 GOROOT=/usr/local/go #GOROOT是你的go的安装路径 export PATH=$GOROOT/bin:$PATH |
请发表评论