goland自动下载依赖需满足三个前提:项目根目录存在有效go.mod、go111module=on已启用、goproxy配置可访问;任一不满足则底部无“downloading modules…”提示,且右键reload或重启ide均无效。

go.mod 不存在或位置不对,自动下载根本不会启动
GoLand 的自动下载只在项目根目录存在有效的 go.mod 时才可能触发。它不识别子目录里的 go.mod,也不接受放在 src/ 下或路径含中文、空格的项目。
- 运行
ls go.mod(macOS/Linux)或dir go.mod(Windows)确认文件真实存在 - 如果不存在,必须先在终端进入项目根目录,执行
go mod init example.com/myapp(模块名可任意,不需可访问) - 手动创建的
go.mod若为空或缺module行,GoLand 会判定为无效——删掉重来,别修格式 - 右键 → “Reload project” 不会补救,重启 IDE 或重新打开文件夹也无效,只有
go.mod真正就位后,底部才可能出现 “Downloading modules…”
GO111MODULE=off 或 GOPROXY 未生效,gopls 和 IDE 都会静默失败
VSCode 的 gopls 和 GoLand 都依赖环境变量判断是否启用模块模式。若 GO111MODULE=off 或 GOPROXY 为空,它们会退化到 GOPATH 模式,完全忽略 go.mod,且不报错——只让你 import 报红、跳转失效。
GoLand 2026.1.1 是 2026.1 发布后的首个维护修正版本,适合已经开始体验 2026.1 新功能并希望同步补丁的开发者。它更适合用于入门项目、现有项目迁移测试和 IDE 行为验证。
- 在终端执行
go env GO111MODULE,输出必须是on;否则运行go env -w GO111MODULE=on - 执行
go env GOPROXY,推荐值是https://goproxy.cn,direct;若为空或为https://proxy.golang.org,国内基本卡死 - GoLand 内部不读系统级环境变量:必须在
Settings → Go → Go Modules → Environment里显式填入GOPROXY=https://goproxy.cn,direct - VSCode 用户注意:
go.toolsEnvVars必须写进工作区设置(.vscode/settings.json),仅改 Windows 环境变量或 PowerShell$env:无效
go mod tidy 才是真正拉包的动作,IDE 不会替你执行
GoLand 导入项目、甚至点击 “Load Go Modules”,本质都是调用 go mod tidy,而不是 go mod download。它只解决“声明缺失”,不保证所有间接依赖都落地——尤其当你刚加了 import "github.com/gin-gonic/gin" 却没运行过 tidy,IDE 就算索引再快也补全不了。
- 每次新增 import 后,务必在终端执行
go mod tidy;它会更新go.mod并触发下载 - 若
tidy报cannot find module,不是代码写错了,是代理或网络问题——先检查GOPROXY是否生效,再试go get -v github.com/gin-gonic/gin -
go mod download是可选的预热动作,用于提前拉取全部依赖到$GOPATH/pkg/mod,但日常开发中tidy足够 - 右键
go.mod→ “Load Go Modules” 等价于go mod tidy,但失败时不会显示错误详情,建议优先用终端执行并观察输出
私有仓库或 golang.org/x 包下载失败,大概率是 GOPRIVATE 没配
设置了 GOPROXY 后仍拉不到 golang.org/x/net 或公司内网 Git 地址的包,常见原因是 Go 尝试用代理访问这些地址,而代理返回 403 或超时——这时必须用 GOPRIVATE 明确排除。
- 执行
go env -w GOPRIVATE=git.company.com,golang.org/x(多个域名用逗号分隔,**不能有空格**) - 若使用
https://goproxy.cn,它默认不代理golang.org/x,所以必须加golang.org/x到GOPRIVATE - 验证:运行
go env | grep -E "(GOPROXY|GOPRIVATE)",确保两者都非空且内容合理 - 配置完后,需重启终端或执行
go env -u清除缓存,否则旧值可能残留
go mod tidy 并盯住它的输出。










