go-mod包管理与应用,常见错误排查方法

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文件中是否有其他错误未解决

相关推荐
我很好我还能学几秒前
【面试篇 9】c++生成可执行文件的四个步骤、悬挂指针、define和const区别、c++定义和声明、将引用作为返回值的好处、类的四个缺省函数
开发语言·c++
2302_8097983216 分钟前
【JavaWeb】Docker项目部署
java·运维·后端·青少年编程·docker·容器
蓝婷儿22 分钟前
6个月Python学习计划 Day 16 - 面向对象编程(OOP)基础
开发语言·python·学习
孔令飞33 分钟前
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
ai·云原生·容器·golang·kubernetes
渣渣盟38 分钟前
基于Scala实现Flink的三种基本时间窗口操作
开发语言·flink·scala
zhojiew40 分钟前
关于akka官方quickstart示例程序(scala)的记录
后端·scala
sclibingqing1 小时前
SpringBoot项目接口集中测试方法及实现
java·spring boot·后端
糯米导航1 小时前
Java毕业设计:办公自动化系统的设计与实现
java·开发语言·课程设计
糯米导航1 小时前
Java毕业设计:WML信息查询与后端信息发布系统开发
java·开发语言·课程设计
MessiGo2 小时前
Javascript 编程基础(5)面向对象 | 5.1、构造函数实例化对象
开发语言·javascript·原型模式