go 1.27.1 use ( ./module/base/ads ./module/base/cloud ./module/base/cms ./module/base/feedback ./module/base/fts ./module/base/initial ./module/base/logs ./module/base/mgt ./module/base/passport ./module/base/sender ./module/ec/address ./module/ec/mall ./module/ec/market ./module/ec/order ./module/finance/wallet ./module/social/feed ./module/social/group ./module/social/relation ./pkgs/all ./pkgs/ecmall ) replace git.apinb.com/bsm-sdk/core => ../../bsm-sdk/core // 统一 google.golang.org/grpc 的版本,避免旧版 grpc 把陈旧的 genproto 拉进模块图。 // // 背景:github.com/tjfoc/gmsm@v1.4.1(go 1.14,不做模块图剪枝)→ grpc@v1.31.0 // → github.com/envoyproxy/go-control-plane@v0.9.4 → google.golang.org/genproto 旧版单体模块。 // genproto 已把 googleapis/api、googleapis/rpc 拆成独立子模块,但旧版单体模块里仍保留同名目录, // 于是同一个包同时命中两个模块,报 "ambiguous import"。 // // 模块模式下 Go 用惰性加载(只按主模块根需求解析包)能自动消歧,单模块构建因此正常; // 工作区模式使用完整模块图、不做惰性加载,所以工作区里所有模块都会报这个错。 // 把 grpc 归并到工作区统一使用的 v1.84.0 后,grpc@v1.31.0 不再作为模块图节点存在, // 由它引入的那条旧 genproto 依赖随之消失。 replace google.golang.org/grpc => google.golang.org/grpc v1.84.0