go mod使用踩坑记录 | 青训营

74 阅读1分钟

在项目中因为采用分布式实现,所以涉及到两个module之间的调用(本地库调用)。其中涉及到go.mod文件的编写,特此记录自己的踩坑记录。

在我的项目中涉及到的问题是hertz_server作为总网络请求接入需要调用kitex的client以实现调用相应的server服务。但是在编写的时候idea无法自动调用包或是调用错误的包而发生报错,所以需要手动编写go.mod文件。

屏幕截图 2023-08-27 214503.png 首先查看auth_server的go.mod文件中的module名。module名为 tiktok/benxinm/authserver

module tiktok/benxinm/authserver

go 1.19

因此需要在调用处go.mod文件中编写依赖

require tiktok/benxinm/authserver v0.0.0 其中v表示版本且必须填写,一般自己写的module为v0.0.0

之后需要做映射,使用replace关键词

replace tiktok/benxinm/authserver => ../auth_server

箭头左边表示下面require的module名,而箭头右边表示被调用文件的相对位置或是绝对位置

如果使用goland可以右键文件夹点击copy Path/reference快捷获取文件夹位置。

之后就可以直接import导入本地库了。