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-数据类型
c语言·开发语言·chrome
foggyprojects13 分钟前
AI 问数也要做行级权限:让 Codex 给销售查询加上权限
后端
君顾115 分钟前
从0到1课后辅导管理系统开发实战:需求文档、架构设计全复盘
java·开发语言
神仙别闹16 分钟前
基于C++ MFC RSA 实现加密程序
开发语言·c++·mfc
增量星球31 分钟前
一个 Python 脚本 + LLM 怎么替代向量检索?ProjQA 技能架构原理深度解析
开发语言·python·架构·embedding·skill
探数API小喇叭1 小时前
基站查询 API 怎么用?LAC、CELLID 参数详解与实战】
java·开发语言·api·基站定位
Mr.Lu ‍1 小时前
C++开发,使用openCV API对图片进行压缩
开发语言·c++·opencv
z落落1 小时前
C# WinForm NModbus 串口通信+WinForm Modbus4 串口通信
开发语言·单片机·c#
Mojitocean1 小时前
Win开发环境配置(持续更新)
开发语言·python