使用go mod导入本地自定义包问题
目录
- go mod导入本地自定义包
- golang如何引入自定义包
- 1.第一种比较笨的方式
- 2.第二种使用go.mod的方式,项目比较推荐
- 总结
go mod导入本地自定义包
1.要使用gomod首先要开启gomod,而不使用旧方法导入包
go env -w GO111MODULE=on
2.创建项目
mkdir myproject go mod init myproject
假设项目目录为:
其中main包和utils包同级

3.在main包中就可以使用utils包了
package main
import (
"fmt"
//导入自定义包时直接加上项目名,因为项目在init时已经添加到go环境中了
"myproject/utils"
)
func main(){
fmt.Println("hello worl编程客栈d")
//调用utils中的Test函数
utils.Test()
}
golang如何引入自定义包
比如安装go jdk在D盘D:\golang\bin
建议将项目放在D:\golang\src目录下,这时候直接可以读取GOPATH为D:\golang\src,此时引入自定义包路径即为自己项目名称+具体包路径
1.第一种比较笨的方式
比如可以在D:\golang\src下建一个项目my-project
my-project目录层级如下:
- main/main.go
- utils/utils.go
main.go调用自定义包utils包的方法GetSum
package main
import (
"http://www.devze.comfmt"
"mjsy-project/utils"
)
fuUnZVticGtnc main() {
var result int = utils.GetSum(100, 200)
fmt.Println(result)
}
utils.go包下可以自定义包名和函数GetSum
package utils
func GetSum(a int, b int) int {
return a + b
}
2.第二种使用go.mod的方式,项目比较推荐
早在终端输入命令:go mod init 后面一般跟git项目路径即可
执行完go mod init github.com/golang/go-web命令生成 go.mod文件大致如下,后面这只是虚拟个人git项目地址,根据个人项目情况而定:
module github.com/golang/go-web go 1.20
导入包测试
新建一个testModule/test.go
package testModule
func CountSum(a int, b int) int {
return a + b
}
在main.go入口文件www.devze.com引入包测试
package main
import (
"fmt"
"github.com/golang/go-web/testModule"
)
func main () {
res := testModule.CountSum(23, 88)
fmt.Println("输入计算结果:", res)
}
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
加载中,请稍侯......
精彩评论