使用 Scoop 安装并配置 Go 环境
在 Windows 上用 Scoop 安装 Go、配置模块代理,并验证 go version / go env / 第一个模块可运行。
#type / howto
#status / evergreen
#tech / dev
#resource / go
[!info] 关联笔记
使用 Scoop 安装并配置 Go 环境
这个场景为什么出现
Windows 上装 Go 可以走官方 MSI,也可以用包管理器。若你已在用 Scoop,一条命令即可安装/升级,并与 PATH 管理一致。装完后仍需验证工具链,并(在国内网络下)配置模块代理。
[!abstract] 一句话理解 Scoop 负责安装
go二进制;go env负责模块代理与工作区变量;最终以go version+ 最小 module 的go run验收。
目标
完成后应满足:
where.exe go指向 Scoop 安装的工具链go version/go env GOROOT GOPATH GOPROXY正常- 能
go mod init并go run最小package main - (可选)
gopls/staticcheck可安装到GOPATH/bin
前置
- 已安装 Scoop
- 可访问外网或可用模块代理
步骤
1. 安装 Go
scoop install go
go version
升级:
scoop update go
2. 配置模块代理(按网络环境)
模块模式在现代 Go 为默认;若环境较旧可显式打开:
go env -w GO111MODULE=on
go env -w GOPROXY=https://proxy.golang.org,direct
国内常用示例(按你的可用性选择,非官方唯一要求):
go env -w GOPROXY=https://goproxy.cn,direct
查看:
go env GOROOT GOPATH GOPROXY GOMODCACHE
3. 验收:最小模块
mkdir hello-go
cd hello-go
go mod init example.com/hello
写入 main.go:
package main
import "fmt"
func main() {
fmt.Println("hello from scoop go")
}
go run .
4. 可选:安装常用工具
go install golang.org/x/tools/gopls@latest
go install honnef.co/go/tools/cmd/staticcheck@latest
确保 %USERPROFILE%\go\bin(或 go env GOPATH\bin)在 PATH 中。
边界与注意
- Scoop 装的 Go 与 MSI 并存时,PATH 以谁为准要看
where.exe go。 - 公司网络可能需要不同
GOPROXY/GOSUMDB。 CGO_ENABLED与 C 工具链是另一条线,见 go-cgo。- 版本支持策略见 Go download 与发布说明。
常见误区
[!warning] 只装不验证
必须go version与go run。
[!warning] 代理写成唯一源且不可达
保留,direct或准备备用。
[!warning] PATH 里多个 go
Scoop 与 MSI 并存时,用where.exe go确认优先级。
可验证实验
scoop list go与go version是否一致。- 新建临时目录:
go mod init example.com/tmp && go run .。 - 改
GOPROXY后执行go env GOPROXY确认写入。 - (可选)
go install golang.org/x/tools/gopls@latest,确认%USERPROFILE%\go\bin\gopls.exe存在。
与通用安装笔记的关系
跨平台概念与第一个程序结构见 install-go-and-run-first-program;本篇专注 Scoop + Windows 实操。
本节总结
- Scoop 负责安装与升级
go go env负责代理与路径- 验收以
go version+ 最小 module 的go run为准 - 与 MSI 并存时先查 PATH
自测题
- 如何确认当前 shell 用的是 Scoop 的 go?
GOPROXY的作用?- 为什么装完还要跑一个最小
go run?
答案
where.exe go与go env GOROOT。- 解析/下载模块的代理列表。
- 只验证二进制在 PATH 不够,还要验证 module 构建与运行闭环。
延伸阅读
- Install Go
- go command env
- Modules
- Scoop 文档:https://scoop.sh/
笔记元信息
- 文件:
setup-go-with-scoop.md - 状态:已深化