开发者

使用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包同级

    使用go mod导入本地自定义包问题

    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)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜