Beego 企业内网离线安装需严格遵循路径规范:GOPATH与GOBIN必须一致且GOBIN加入PATH;beego/v2和bee/v2源码须按github.com/beego/beego/v2等模块路径摆放;bee需手动go build后复制至GOBIN;go.sum须提前生成并包含于离线包。

Beego 在企业内网离线安装,核心就一条:别碰 go get 网络拉取,所有代码、工具、依赖必须提前下载好并按 Go 模块路径结构手动摆放。
确认 GOPATH 和 GOBIN 是否配对且生效
离线环境下,go install 能否成功,完全取决于 GOPATH 和 GOBIN 是否指向同一套工作空间。常见错误是:GOPATH 设在 E:GOWORK,但 GOBIN 还留在默认的 %GOROOT%in(Windows)或 $GOROOT/bin(Linux/macOS),导致 bee 编译后找不到可执行文件。
- 运行
go env GOPATH GOBIN,确认两者路径一致或GOBIN明确指向$GOPATH/bin - Windows 用户注意:若 GOPATH 是
E:GOWORK,则必须手动设置GOBIN=E:GOWORKin,不能依赖默认值 -
$GOPATH/bin必须加入系统PATH,否则终端无法识别bee命令
beego/v2 和 bee/v2 的离线目录结构必须严格匹配模块路径
v2 版本已彻底弃用 github.com/astaxie/beego,所有导入和安装路径都变为 github.com/beego/beego/v2 和 github.com/beego/bee/v2。离线摆放时,路径错一位就会编译失败。
- 下载 beego/v2 源码 ZIP(从 GitHub Releases 找带
v2.x.x标签的源码包),解压后内容应放入:$GOPATH/src/github.com/beego/beego/v2 - 下载 bee/v2 源码 ZIP(同上,选
v2.x.x版本),解压后内容放入:$GOPATH/src/github.com/beego/bee/v2 - 切勿把 v2 代码放进
astaxie目录下——这是 v1 的遗毒,会导致go install github.com/beego/beego/v2找不到包
bee 工具必须 go build 后手动复制到 GOBIN
bee 不是纯库,而是一个可执行命令,离线时不能靠 go install 自动部署,必须显式构建并移入 GOBIN。
- 进入
$GOPATH/src/github.com/beego/bee/v2目录 - 运行
go build -o bee(Windows 下生成bee.exe) - 将生成的二进制文件复制到
$GOBIN目录(不是src!) - 验证:
bee version应输出类似______ | ___ \ | |_/ / ___ ___ | ___ \/ _ \/ _ \ | |_/ / __/ __/ \____/ \___\___/ 2.4.0
首次创建项目时 go mod tidy 很可能失败,需提前准备 go.sum
离线运行 bee new myapp 后,go mod tidy 会因无法访问 proxy.golang.org 或 checksum.golang.org 而卡住,报错如 verifying github.com/beego/beego/v2@v2.4.0: checksum mismatch。
- 解决方案:在有网环境提前为 beego/v2 和 bee/v2 生成完整
go.sum,连同go.mod一起打包进离线包 - 若已卡住,可临时注释掉
go.mod中疑似出错的 require 行,再go mod tidy;或直接删掉go.sum,用go mod download -x(需提前缓存好模块) - 最稳做法:离线包中直接包含一个已跑通
go mod tidy的最小示例项目模板,避免现场生成
离线安装最易被忽略的点是:v2 的路径命名规则和模块校验机制比 v1 严格得多,任何路径拼写偏差、大小写错误、版本号遗漏(比如漏写 /v2)都会导致编译器静默失败或报“package not found”,而不是明确提示“请检查网络”。务必逐级核对文件系统路径与 import 声明是否完全一致。











