go mod进行包管理
go 中 包管理使用go mod 进行包管理
go mod init 项目名称
go mod init myproject_go
生成的go.mod中有
module myproject_go
创建目录go_service 其下有两个go文件,go_request.go go_write.go . 根目录下有main.go入口文件。于是项目结构类似于:
-myproject_go
-go_service
-go_request.go
- go_write.go
-main.go
go_request.go中第一行是定义包名称:
package mypackage
注意:这里定义什么package name (比如本文件是mypackage ),本目录下是属于一个package,定义的package name应该是同一个。一个包目录下只能有一个package,不同文件定义不同的package会报错
则go_write.go中第一行也应该是
package mypackage
在main.go调用package应该是如下引用, 表示引入go_service下的mypackage包
import (
mypackage "dongcha/src/go_service"
)
func main(){
mypackage.FuncName() //调用package中go文件中定义的FuncName()
}
使用包来调用包中定义的函数。此函数必须是大写开头的。
若是通过package.FuncName()方式调用,但是报无法识别的错误:
1,检查包的引用是否正确
2,检查函数名称是否大写开头
3,可以检查相关.go文件中是否有其他错误未解决