关于Golang中自定义包的简单使用-Go Mod

1. go env 查看 GO111MODULE 是否为 on,不是修改成on
bash 复制代码
go env -w GO111MODULE=on
2 .自定义包的目录格式
3. test.go 内容
Go 复制代码
package calc  

func Add(x, y int) int {  // 首字母大写表示公有方法
    return x + y
}

func Sub(x, y int) int {
    return x - y
}
4.生成calc目录下的go.mod文件
bash 复制代码
go mod init calc
5.main.go 内容
Go 复制代码
package main

import (
    "fmt"
    "calc"  // 使用自定义包
)

func main() {
    sum := calc.Add(10, 2)
    fmt.Println(sum)
}
6.生成TestGoMod目录下的 go.mod文件
bash 复制代码
go mod init TestGoMod

并添加一下两行内容

bash 复制代码
require calc v1.0.0    // 指定包的版本

replace calc => ./calc // 修改包的位置
7. 运行main.go
bash 复制代码
go run main.go
相关推荐
FfHUCisI5 小时前
sync.Once 与 sync.Cond 源码与并发控制陷阱
服务器·开发语言·后端·golang
Wx-bishekaifayuan11 小时前
springboot生活商城系统21035-计算机课程设计、毕业设计
spring boot·后端·python·spring·elasticsearch·golang·课程设计
ttwuai6 天前
Go开源后台管理系统推荐:怎么按技术栈和边界比较4个官方仓库?
golang·gin
codeejun6 天前
每日一Go·MySQL-5、锁机制全解析
云原生·golang
Achou.Wang6 天前
k8s中nginx worker process自动设置
后端·golang
指尖的爷7 天前
ARM 架构 Ubuntu(RK3588/aarch64)go开发环境安装手册
ubuntu·架构·golang
名字还没想好☜7 天前
Go 实现指数退避重试:context 取消、抖动 jitter 与什么时候别重试
后端·golang·go
Casbin开源社区7 天前
OpenAgent 详解:单二进制自托管 AI Agent 平台,30+ 模型接入、RAG 知识库、MCP 工具调用与 Casbin 工具权限
人工智能·golang·开源
五彩小白8 天前
GO语言装饰器语法
golang
金金计较.8 天前
Go语言-4
开发语言·golang