为了账号安全,请及时绑定邮箱和手机立即绑定

在主包中添加模块作为 git 子模块

在主包中添加模块作为 git 子模块

Go
九州编程 2023-03-07 13:21:34
我是 golang 的新手,在创建新模块时遇到了一些问题我想在我的主包中添加一个 git 子模块,这样我就可以同时工作并提交到两个包该模块http_fs像这样添加为 git 子模块git submodule add git@github.com:xxx/http_fs.git repo/http_fs主包package mainimport "repo/http_fs"go.mod对于http_fs模块看起来像这样module github.com/xxx/http_fsgo 1.19当我尝试运行主包时go run main.go出现此错误package repo/http_fs is not in GOROOT (/usr/local/go/src/repo/http_fs)文件结构./main.go // main package./repo/http_fs/http_fs.go更新go.mod在主包中module maingo 1.19replace github.com/xxx/http_fs v1 => ./repo/http_fs
查看完整描述

1 回答

?
哈士奇WWW

TA贡献1799条经验 获得超6个赞

错误原因

package repo/http_fs is not in GOROOT (/usr/local/go/src/repo/http_fs)

go.mod/usr/local/go/src/repo/http_fs声明模块github.com/xxx/http_fs,而不是repo/http_fs

您需要导入与 中指定的完全相同的模块go.mod,即github.com/xxx/http_fs

go.mod您的主模块使用replace指令中:

replace github.com/xxx/http_fs v1.2.3 => ./repo/http_fs

Replace 指令告诉编译器在哪里可以找到模块的源代码。


查看完整回答
反对 回复 2023-03-07
  • 1 回答
  • 0 关注
  • 85 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信