Golang 自定义包引入GOPATH 模式
GOPATH工作区根目录,安装go时配置的环境变量,引入的包的位置必须在GOPATH的src目录下。通过以下命令可查看:
go env GOPATH
定义好项目结构:

main.go
package main
import (
"fmt"
"project01/utils"
)
func main() {
fmt.Println("---------------")
sum := utils.GetSum(10, 20)
fmt.Println(sum)
}utils.go
package utils
func GetSum(num1 int, num2 int) int {
return num1 + num2
}
在执行go run main.go之前必须要检查:GO111MODULE 配置
GO111MODULE 有三个值:off, on和auto(默认值)
a.GO111MODULE=off,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。
b.GO111MODULE=on,go命令行会使用modules,不会去GOPATH目录下查找。依赖包的存放位置变更为$GOPATH/pkg,允许同一个package多个版本并存,且多个项目可以共享缓存的 module。
c.GO111MODULE=auto,go命令行将会根据当前目录来决定是否启用module功能。这种情况下可以分为两种情形:
当前目录在GOPATH/src之外且该目录包含go.mod文件
当前文件在包含go.mod文件的目录下面。
具体情况可查看go.mod使用
貌似go1.25.0 版本GO111MODULE 默认是打开的,所以必须通过以下命令给关闭:
go env -w GO111MODULE=off go clean -modcache
通过以上操作就可实现GOPATH模式引入依赖包
到此这篇关于Golang 自定义包引入GOPATH 模式的文章就介绍到这了,更多相关Golang 引入GOPATH 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!


最新评论