GO引入本地自定义包示例

211 阅读1分钟

Go 语言的 Module 新特性是在 go1.11 的发布之后才支持的,这是 Go 语言新的一套依赖管理系统。

以下是一个go语言自定义包并引入的示例

1. 创建calc包

首先创建一个目录用于存放接下来放的包

mkdir pack

进入目录并创建calc文件夹

在其中创建sum.go文件

并写入

package calc

func Sum(a, b int) int {
	return a + b
}

然后在当前目录执行

go mod init github.com/wwhds/calc

此时我们就拥有了一个本地的包

2. 创建hello包

回退到上一层的文件夹

创建hello文件夹

在其中创建hello.go文件并写入

package main

import (
	"fmt"
	"github.com/wwhds/calc"
)

func main() {
	fmt.Println(calc.Sum(12, 23))
}

然后创建go.mod文件并写入

module hello

go 1.22

replace github.com/wwhds/calc => ../calc

由于我们是本地包,所以需要通过replace来替换路径

3. 创建工作区

回到上一级目录

创建go.work并写入

go 1.22

use (
	hello
	calc
)

4. 运行

回到hello目录下

执行

go run hello.go

输出

35