必须先安装buffalo cli并配置path,再进项目目录依次执行go mod tidy和npm install,缺一不可;否则buffalo dev因缺失依赖或前端资源而直接失败。

必须先装好 Buffalo CLI,再进项目目录依次执行 go mod tidy 和 npm install,缺一不可——否则 buffalo dev 启动直接失败。
Buffalo CLI 安装失败的常见原因
报 command not found 不是 Buffalo 问题,而是 PATH 没配对:$GOPATH/bin 必须在系统 PATH 里。新开终端后运行 buffalo version,有输出才说明真正就位。
如果 go install github.com/gobuffalo/cli/cmd/buffalo@latest 报 cannot find module providing package,大概率是 Go 版本低于 1.21,或没设 GOPROXY。临时解法:go env -w GOPROXY=https://goproxy.cn,direct,再重试。
Windows 用户用 Scoop 最省心:scoop bucket add extras && scoop install buffalo,PATH 自动注册,不用手改。
进项目后为什么 go mod tidy 不能跳过
Buffalo 生成的 go.mod 只列了顶层依赖,像 github.com/gobuffalo/pop/v6 这类 ORM 子模块不会自动拉取。不执行这步,后续 buffalo db migrate 会 panic,错误信息通常是 undefined: pop.NewConnection。
国内拉依赖慢?执行:go env -w GOPROXY=https://goproxy.cn,direct,然后重跑 go mod tidy,速度提升明显。
Buffalo框架 1.0.1 版本源码包下载,适合需要错误处理改进、依赖更新、render.Download 注释和 request logger 调整的 v1 项目。
如果项目用了 SQLite,go mod tidy 还会触发 gcc 编译驱动——Linux/macOS 需提前装好 build-essential 或 Xcode Command Line Tools;Windows 上建议用 WSL2 而非 Git Bash,避免 GOPATH 模式干扰。
npm install 为什么连纯 API 项目也要跑
buffalo dev 默认启动时会尝试构建前端资源,找不到 node_modules 就直接退出,哪怕你删了 assets/ 目录也一样。
想跳过?创建项目时加 --skip-yarn 参数:buffalo new myapi --api --skip-yarn。但注意:之后如果手动加了前端逻辑,还得进 assets/ 目录补上 yarn install。
Yarn 比 npm 更稳,推荐全局换源:yarn config set registry https://registry.npm.taobao.org。再进 assets/ 执行 yarn install --frozen-lockfile,避免 lock 文件漂移。
最容易被忽略的是:所有依赖命令(CLI、Go、Node)都必须在不同阶段分别验证成功——buffalo version、go version、yarn --version 都得有输出,且路径不冲突。任何一环断掉,buffalo dev 就不是报错,而是静默退出。










