如你存放地址的包在src/xxx.com中时请通过命令行进入这个文件夹的位置
然后执行go mod init xxx.com/m/v1回车
上述的.../m/v1随便,这个是按照官方的建议这么写的方便维护版本吧?!
再次尝试引入自定义包,引用方式如下:
xxx.com/m/v1
|_test
| |_test.go
|_main.go
import (
"fmt"
"xxx.com/m/v1/test"
)
献给被折磨许久的小伙伴们。。。
下载go的zip文件。并且一定要把文件解压到c:\go目录下。2、配置windows的高级环境变量。包括:GOROOT、GOOS、GOBIN、GOARCH。并且在path变量里面把c:\go\bin加入。以便可以在命令行直接运行go命令。先看一下目录结构,注意这里的src名称是必须的,go在设置了GOPATH后,默认会添加src去寻找package,暂未查询是否有方法不按照src查询
根据上面的描述,Go语言中通过包中函数的名称来区分公共函数和私有函数,我们在main函数中是无法调用myPrivateFunc的
此时如果执行通过go run方式执行,会看到如下的提示信息,这与大部分语言对于包管理方式相关,所以我们通过两种不同的方法来让代码执行起来
返回如下,这里面对我们后续执行有影响的两个参数GO111MODULE和GOPATH
如果要使用gopath模式引用包,则需要关闭mod模式
设置GOPATH为当前路径,即main.go所在的路径
此时再查看go env时,GOPATH已经发生改变
我们再次尝试执行代码
可以看到public函数被调用