Go 多模块工作区处理一个go项目下有多个module(即多个go.mod)的情况

背景

在现在微服务盛行的年代,一个人会维护多个代码仓库,很多的时候是多个仓库进行同时开发,也就是在当前项目下有多个目录,每个目录对应一个微服务,每个微服务都有一个go.mod文件。那么我在其中一个目录下要怎么导入其他目录中的库呢?答案是使用go work。

这是没使用go work的场景,无法识别自定义包(这些包下都各自有各自的go.mod)

运行

go work init 包名...

生成go.work文件

复制代码
go 1.22.1

use (
	./toktik-api
	./toktik-chat
	./toktik-comment
	./toktik-rpc
	./toktik-common
	./toktik-favor
	./toktik-interaction
	./toktik-video
	./toktik-user
)

就可以运行了。

具体文档: link1st/workspaces at master · link1st/link1st · GitHub

相关推荐
bkspiderx6 小时前
Qt 插件机制:动态扩展应用功能的核心框架
开发语言·qt·元数据·qt 插件·qpluginloader
代码什么用7 小时前
Spring基础使用
java·后端·spring
程序员老陆7 小时前
深入理解 C++ thread_local:线程私有存储的正确打开方式
开发语言·c++·程序设计
沐晓时光7 小时前
C语言入门,深入理解指针(3)
c语言·开发语言
明月_清风7 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
码云数智-园园7 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
蜗牛互联网7 小时前
Java 17 HttpClient调用文件转写API的超时与失败回退
java·人工智能·后端
禾小西8 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨8 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言
徐小黑ACG8 小时前
Golang 基础05 结构体struct
开发语言·算法·golang