1、首先需要明确自己的GOROOT是什么:
使用go env命令查看:
go 编译器在import的时候,会去GOROOT/scr文件夹下去找被import的包,
这里就是去:E:\GO_sdk\go\src文件夹下去找;
举个例子:
当执行上图中划红线的语句时,go会将路径“GOROOT/src/my_go_project/src/gocode/project01/utils”下的.go文件全部import进来,例如:utils1.go 、utils2.go,然后这两个.go文件中的函数就可以被调用了;需要注意的是,utils1.go 和utils2.go都必须写为:package utils;
2、一个推荐的go工程的结构应该如下:
mian文件夹下最好只包含一个mian.go文件,写为:package main;
其他文件夹下可以有多个不同命名的.go文件,以utils文件夹为例,下面包含了utils1.go 、utils2.go两个.go文件,需要注意的是,utils1.go 和utils2.go都必须写为:package utils;
同一个包(文件夹)下,不能有同名的函数,即使放在不同的.go文件中也不行;
包名和包所在的文件夹的名称可以不一致,import的时候导入的是文件夹的路径;
同一个文件夹下的所有.go文件的包名(package baoname)必须一致;