直接修改goland的jvm参数:添加-xms512m和-xmx2048m至custom vm options文件,并确保使用arm64版(m1/m2 mac),重启ide即可解决启动慢或“jvm内存不足”问题。

GoLand打不开或提示“JVM内存不足”怎么办
直接改配置,别等它自己缓过来。GoLand本质是Java应用,启动慢或崩溃大概率是JVM参数太保守。
- 打开
Help → Edit Custom VM Options(首次会提示创建文件),添加两行:-Xms512m<br>-Xmx2048m
- 如果用M1/M2 Mac,必须确认安装的是ARM64版GoLand,否则JVM会卡在启动界面——Intel版在Rosetta下跑得极慢,且可能报
UnsatisfiedLinkError - 改完重启,别点“Reload project”,那是给Go module用的,不是重启IDE
新建项目时GOROOT和GOPATH到底填不填
Go 1.16+默认启用Go modules,GOROOT几乎不用手动设;GOPATH在新项目里也基本失效——但GoLand仍会读取它来定位go命令和标准库索引。
GoLand 2026.1.1 是 2026.1 发布后的首个维护修正版本,适合已经开始体验 2026.1 新功能并希望同步补丁的开发者。它更适合用于入门项目、现有项目迁移测试和 IDE 行为验证。
-
GOROOT:一般自动识别,除非你装了多个Go版本。查真实路径用go env GOROOT,粘贴进去即可 -
GOPATH:现代项目可留空,但如果用go get装旧包(比如golang.org/x/tools),它仍会把二进制丢进$GOPATH/bin,所以建议设成~/go(不要带空格或中文) - 新建项目选“Go Modules”而非“Go Workspace”,否则GoLand会强行按GOPATH结构组织目录,后续切modules会报
cannot find module providing package
运行main.go却提示“no Go files in directory”
不是代码写错了,是GoLand没认出这是Go项目——常见于从zip解压或git clone后直接打开文件夹。
- 右键项目根目录 →
Mark Directory as → Sources Root,否则GoLand当普通文件夹处理,不激活Go插件 - 检查
go.mod是否存在。没有就终端进目录执行go mod init example.com/hello,GoLand几秒后自动加载依赖索引 - 如果用了
//go:embed或cgo,确保已勾选Settings → Go → Build Tags里的对应tag,否则编译器跳过相关文件
测试文件_test.go点不了绿色三角运行按钮
GoLand默认只对func TestXXX(*testing.T)提供Run Configuration,且要求文件名、函数名、包名全合规。
- 文件名必须以
_test.go结尾,且和被测代码在同一个package(同目录下) - 测试函数名必须是
Test开头 + 大驼峰,比如TestHandleRequest合法,testHandleRequest或Test_handle_request都不行 - 如果想单独跑某个测试,在函数内右键 →
Run 'TestHandleRequest';想跑整个文件,右键文件 →Run 'Tests in xxx_test.go' - 注意
go test默认不打印t.Log(),要看到输出得加-v参数——GoLand的Run Configuration里勾选Verbose output就行
go list -json能正常返回,编辑和跳转就基本可用,不用死等它跑完。










