接下来,我们将golang.org/x/example模块的本地副本添加到工作区 。然后,我们将向stringutil包中添加一个新函数 , 我们可以使用它来代替Reverse.
在这一步中 , 我们将下载包含该模块的 Git 存储库的副本golang.org/x/example,将其添加到工作区,然后向其中添加一个我们将从 hello 程序中使用的新函数 。
1、克隆存储库
在工作区目录中,运行git命令来克隆存储库:
2、将模块添加到工作区
该go work use命令将一个新模块添加到 go.work 文件中 。它现在看起来像这样:
该模块现在包括example.com/hello模块和 `golang.org/x/example 模块 。
这将允许我们使用我们将在模块副本中编写的新代码 , 而不是使用命令stringutil下载的模块缓存中的模块版本 。
3、添加新功能 。
我们将向golang.org/x/example/stringutil包中添加一个新函数以将字符串大写 。
将新文件夹添加到workspace/example/stringutil包含以下内容的目录:
4、修改hello程序以使用该功能 。
修改workspace/hello/hello.go的内容以包含以下内容:
从工作区目录,运行
Go 命令在go.work文件指定的hello目录中查找命令行中指定的example.com/hello模块 , 同样使用go.work文件解析导入golang.org/x/example 。
go.work可以用来代替添加replace 指令以跨多个模块工作 。
由于这两个模块在同一个工作区中,因此很容易在一个模块中进行更改并在另一个模块中使用它 。
现在 , 要正确发布这些模块,我们需要发布golang.org/x/example 模块,例如在v0.1.0. 这通常通过在模块的版本控制存储库上标记提交来完成 。发布完成后,我们可以增加对 golang.org/x/example模块的要求hello/go.mod:
这样,该go命令可以正确解析工作区之外的模块 。
go语言项目模块划分的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于go语言 类、go语言项目模块划分的信息别忘了在本站进行查找喔 。
推荐阅读
- 新媒体如何运营文案推广,新媒体如何运营文案推广
- 华为鸿蒙呼之欲出,鸿蒙 华为手机
- 赛车对战游戏有哪些游戏,赛车比赛小游戏
- 怎么用系统u盘做系统教程,如何作系统u盘
- phpjosn传输数据 php 传输文件
- 电脑自带什么软件下载歌曲,电脑自带什么软件下载歌曲免费
- 微信直播任务布置,微信直播任务奖励是多少
- 最大数java代码 java求最大数最小数
- 安全U盘怎么和女生,怎么安全使用u盘