关于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
相关推荐
onlooker6666几秒前
Go 语言底层(四) : 深入 Context 上下文
开发语言·数据库·golang
roman_日积跬步-终至千里1 分钟前
【Go语言基础【5】】运算符基础
golang
roman_日积跬步-终至千里18 小时前
【Go语言基础【20】】Go的包与工程
开发语言·后端·golang
海奥华21 天前
go中的接口返回设计思想
开发语言·后端·golang
飞川撸码1 天前
【LeetCode 热题100】网格路径类 DP 系列题:不同路径 & 最小路径和(力扣62 / 64 )(Go语言版)
算法·leetcode·golang·动态规划
roman_日积跬步-终至千里2 天前
【Go语言基础【14】】defer与异常处理(panic、recover)
golang
孔令飞2 天前
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
ai·云原生·容器·golang·kubernetes
我的golang之路果然有问题2 天前
云服务器部署Gin+gorm 项目 demo
运维·服务器·后端·学习·golang·gin
孔令飞2 天前
Go 为何天生适合云原生?
ai·云原生·容器·golang·kubernetes