必须先安装buffalo cli,否则buffalo new、buffalo dev等命令均报command not found;要求go 1.23或1.24,go install github.com/gobuffalo/cli/cmd/buffalo@latest安装后需确保$gopath/bin在path中,并用buffalo version验证。

必须先装好 buffalo CLI,否则所有后续命令(如 buffalo new、buffalo dev)都会报 command not found——这不是框架问题,是环境没搭对。
确认 Go 环境是否达标
Buffalo 当前只支持 Go 1.23 和 1.24。运行 go version,输出必须是类似 go version go1.23.5 或 go version go1.24.1。低于 1.23 会编译失败;高于 1.24 可能触发 panic。别用 1.26.0——那是旧项目维护版,Buffalo 不认。
go env GOPATH 必须返回非空路径,这是 go install 默认放二进制的位置。如果为空,先执行 go env -w GOPATH=$HOME/go(macOS/Linux)或对应 Windows 命令。
- Windows 用户禁用 GOPATH 模式:Buffalo 强制要求 modules 模式,手动设
GOPATH会导致buffalo new直接退出 - 若用 WSL2 或 Git Bash,确保终端里没导出
GOPATH,哪怕它值正确也不行
安装 buffalo CLI 的两种可靠方式
推荐优先用 go install,但前提是网络能通 GitHub 且本地有 gcc(用于编译 sqlite3 驱动):
go install github.com/gobuffalo/cli/cmd/buffalo@latest
Buffalo框架 1.0.1 版本源码包下载,适合需要错误处理改进、依赖更新、render.Download 注释和 request logger 调整的 v1 项目。
安装完后,$GOPATH/bin 必须已加入系统 PATH。新开终端,运行 buffalo version —— 若提示 command not found,说明 PATH 没生效,不是安装失败。
备用方案(无 Go 或网络受限时):
- Linux/macOS:去 GitHub Releases 下载
buffalo_*.tar.gz,解压后把buffalo二进制复制到/usr/local/bin/并chmod +x - Windows:用 Scoop(最稳):
scoop bucket add extras && scoop install buffalo,自动处理 PATH
验证开发环境是否真正就绪
装完 CLI 只是第一步。真正卡住人的往往是后续环节:
- 执行
buffalo new myapp前,确保当前是空目录——非空目录会直接报错退出 - 生成项目后,进
myapp目录,先跑buffalo db migrate(哪怕不用 DB,也得让 pop 初始化成功),再执行buffalo dev,否则访问页面时会 panic -
buffalo dev启动后默认监听:3000,若端口被占,加-p 4000指定;它不会自动开浏览器,需手动访问http://localhost:3000
最关键的漏点:很多人忘了数据库服务本身要先启动。PostgreSQL 要跑着监听 5432,MySQL 要监听 3306,否则 buffalo pop create -a 会卡在 connection refused——这和 Buffalo 无关,是本地服务没起来。










