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

如何指定Go版本运行govulncheck漏洞扫描工具?

解决govulncheck指定Go版本扫描的问题

govulncheck默认依赖当前环境的Go版本进行漏洞评估,你遇到的问题是因为当前shell环境默认使用Go 1.17.9,导致工具基于该版本报告漏洞。以下是几种指定Go 1.18.6运行工具的方法:

方法1:临时指定Go版本运行

  • 直接使用Go 1.18.6的二进制路径执行govulncheck:
    /usr/local/go1.18.6/bin/govulncheck ./...
    
    (替换成你实际的Go 1.18.6安装路径)
  • 或者临时设置GOROOT环境变量:
    GOROOT=/usr/local/go1.18.6 govulncheck ./...
    

方法2:基于项目go.mod版本运行

确保项目go.mod中已声明go 1.18,然后用go run直接拉取并运行对应版本的govulncheck,它会自动匹配项目指定的Go版本:

go run golang.org/x/vuln/cmd/govulncheck@latest ./...

方法3:切换全局默认Go版本

  • 如果你用版本管理工具(如gvm、goenv),直接切换到1.18.6:
    # goenv示例
    goenv local 1.18.6
    # gvm示例
    gvm use go1.18.6
    
  • 手动修改环境变量:
    • Linux/macOS:在~/.bashrc或~/.zshrc中添加:
      export PATH=/usr/local/go1.18.6/bin:$PATH
      
      执行source ~/.bashrc(或对应shell配置文件)生效
    • Windows:在系统环境变量的Path中,将Go 1.18.6的安装目录移到最上方,重启shell后生效

完成上述操作后,运行go version确认当前环境为Go 1.18.6,再执行govulncheck ./...就能得到基于正确版本的漏洞报告。

内容的提问来源于stack exchange,提问作者Roddy of the Frozen Peas

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 03:55:18