Go.mod 项目构建时,两个应用程序互相影响的解决方法
在使用 go.mod 项目构建时,如果有多个应用程序分别在不同目录下,当编译其中一个程序(例如 rpc 程序)后,另一个程序(例如 api 程序)的可执行文件可能会发生变化,即使 api 程序并没有重新编译。
这可能是因为在编译 rpc 程序时,api 程序的依赖库发生了变化,导致 api 程序的可执行文件也受到影响。
为了解决这个问题,可以尝试以下几个步骤:
-
使用
go mod tidy命令清理依赖,确保两个应用程序的依赖库一致。 -
在编译 rpc 程序时,使用
go build -ldflags="-s -w"命令禁用符号表和调试信息,减少对依赖库的依赖,从而避免对 api 程序的影响。 -
可以将 api 程序的可执行文件打包成 docker 镜像或者单独部署,避免在编译 rpc 程序时对 api 程序的影响。
原文地址: https://www.cveoy.top/t/topic/ntuu 著作权归作者所有。请勿转载和采集!