1.从另一个模块调用你的代码

1.创建模块
2.调用模块
总结:
所谓的导包就是导入其他的模块,目的是为了调用,或者说重用代码。

常用命令:
go mod init example.com/greetings
对于生产用途,您需要从其存储库中发布 example.com/greetings 模块(使用反映其已发布位置的模块路径),Go 工具可以在其中找到它以下载它。现在,由于您尚未发布该模块,因此您需要调整 example.com/hello 模块,以便它可以在您的本地文件系统上找到 example.com/greetings 代码。
为此,请使用 go mod edit 命令:
go mod edit -replace example.com/greetings=…/greetings
运行命令后,hello 目录中的 go.mod 文件应包含一个 replace 指令
运行 go mod tidy 命令 以同步:
命令完成后,example.com/hello 模块的 go.mod 文件应如下所示:

module example.com/hello

go 1.16

replace example.com/greetings => ../greetings

require example.com/greetings v0.0.0-00010101000000-000000000000

添加了 require 指令 以指定 example.com/hello 需要 example.com/greetings。
模块路径后面的数字是一个伪版本号 – 一个生成数字,用于代替语义版本号(该模块还没有语义版本号)。
要引用已发布模块,go.mod 文件通常会省略 replace 指令,并使用带有末尾标记版本号的 require 指令。
require example.com/greetings v1.1.0

为什么需要声明包?
Go 是一种基于包(Package)组织代码的语言,通过包声明可以明确以下几点:
代码归属:指定文件属于哪个逻辑单元(包)。
代码复用:不同包之间的代码可以通过导入(import)实现复用。
构建规则:Go 编译器根据包声明来决定如何编译和链接代码。

包声明的规则:
同一个目录下的所有 .go 文件必须属于同一个包。如果一个目录中有多个 .go 文件,它们的包声明必须一致。
main 包是特殊的,如果一个文件声明为 package main,则该文件所在的项目会被编译为一个可执行程序。main 包必须包含一个 main 函数作为程序的入口点。

注意事项:
包名与目录名的关系:
虽然不是强制要求,但通常建议包名与目录名保持一致。例如,mathutils 包应该放在 mathutils 目录下。
测试文件的包声明:
测试文件(以 _test.go 结尾的文件)通常声明为 package <包名>_test,以便与主代码分离。例如:
package mathutils_test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值