GoLand 跑起 Go 代码的核心三件事是:GOROOT 必须手动指定根目录并重启生效、go.mod 文件存在且代理配置为 https://goproxy.cn,direct、gopls 必须通过 go install 安装到位;缺一不可。

GoLand 能跑起 Go 代码,核心就三件事:GOROOT 对、go.mod 有、gopls 在。其他配置全是围绕这三点打转,缺一不可。
GOROOT 必须手动指定且重启生效
GoLand 不继承系统 PATH,也不信“Auto-detect”。哪怕 go version 在终端能跑,IDE 里照样报 No Go SDK found。
-
Settings → Go → GOROOT点右侧文件夹图标,选实际安装根目录(macOS 是/usr/local/go,Windows 是C:\Go),不是bin子目录 - 确认该路径下有
src、pkg、bin三个文件夹;bin/go和bin/gopls都得存在 - 点 Apply 后必须关闭并重启 GoLand——只 Reload project 或改设置不生效,GUI 进程没重读环境
- 验证方式:新建
main.go,写fmt.Println("ok"),右上角绿色三角亮起且无波浪线,才算过
Go Modules 代理必须带 direct
只填 https://goproxy.cn 会卡死私有模块或新版包,因为 Go 默认不回源官方仓库。
GoLand 2026.1.1 是 2026.1 发布后的首个维护修正版本,适合已经开始体验 2026.1 新功能并希望同步补丁的开发者。它更适合用于入门项目、现有项目迁移测试和 IDE 行为验证。
-
Settings → Go → Go Modules勾选Enable Go modules integration - Proxy 栏填完整值:
https://goproxy.cn,direct(注意逗号分隔,direct不可省) - 删掉项目根目录下的
go.work文件(如果存在),它会强制启用多模块工作区,干扰单模块识别 - 右键项目根目录 →
Reload project(不是Sync),触发完整 module 解析流程
运行配置要匹配 go run 的语义
点击绿色三角运行失败?大概率是工作目录或入口路径没对齐 Go 的模块加载规则。
- 别混用
go run main.go和go run .:main.go不解析 import 路径,.才按go.mod加载依赖 - 推荐设为
Working directory: $ProjectFileDir$,Program arguments 留空,让 IDE 自动执行go run . - 如果入口在子目录(如
cmd/myapp/main.go),则 Program arguments 填./cmd/myapp,不要加main.go - 项目路径不能含中文、空格或符号(如
~/Desktop/我的项目),否则go mod init直接失败
最常被忽略的其实是 gopls 的存在性——它不是 Go 安装自带的,必须手动 go install golang.org/x/tools/gopls@latest。没有它,代码补全、跳转定义、实时诊断全失效,但 IDE 不会明确报错,只会“安静地不工作”。

















