目录
前言:
根据过往的编程经验,除了语法之外,编程的文本关系也就是导包说明是非常之重要的。为了分工明确,硕大的代码工程不可能在一个文件里面完成,这次就浅尝一下关于Go语言的导包。
1.创建层级文件
根据如下向导完成模块的创建和代码文件的编写。
Tutorial: Create a Go module - The Go Programming Language
Call your code from another module - The Go Programming Language
你将获得类似如下的效果。
2.检查一下mod文件有什么变化
红框部分是初始化模块的时候生成的内容,红框下面的是执行模块加载之后形成的。所以猜测一下,只要创建新的模块,然后在h(也就是主模块的mod文件中生成如下的内容)就可以导入成功。
replace a/p => ../p
require a/p v0.0.0-00010101000000-000000000000
3.再次创建一个模块
再创建一个模块s,效果如下,这个时候我不去执行那一条复杂的命令
这个命令类似Java的javac吧
go mod edit -replace a/s=../s
而是直接在门户模块中,手写模块加载的信息,尝试一下会怎么样?
module a/h
go 1.25.0
replace a/p => ../p
replace a/s => ../s
require a/p v0.0.0-00010101000000-000000000000
require a/s v0.0.0-00010101000000-000000000000
4.执行一下看效果
执行成功
5.疑惑之处
我在执行run命令的时候,提示我有导入而未使用的模块,强制我提出,不知道go为什么这么设计
另外go有没有类似maven的分布式开发构建管理器?
下一篇应该就是直接上代码了,朋友们,再会!