go语言编程实例及用法(Go语言学习4如何使用mod)

接上期:Go语言学习(3),安装Git如何避免入坑?

go语言编程实例及用法(Go语言学习4如何使用mod)(1)

第二坑:Go Module 新的官方包管理形式

这个坑导致以前的很多Go教程失效,以前版本go教程都是直接使用go get 命令把代码库下载到gopath\src\github.com\......下面的路径中。

我们当前使用的新版本是Go1.16

在 v1.11 中加入了 Go Module 作为官方包管理形式。module是一个相关Go包的集合,它是源代码更替和版本控制的单元。模块由源文件形成的go.mod文件的根目录定义,包含go.mod文件的目录也被称为模块根。moudles取代旧的的基于GOPATH方法来指定在工程中使用哪些源文件或导入包。模块路径是导入包的路径前缀,go.mod文件定义模块路径,并且列出了在项目构建过程中使用的特定版本。

第1步:打开mod开关:

使用命令行:go env -w GO111MODULE=on

表示设置Go1.11版本的MODULE模式开关状态为ON

第2步:创建一个work工程

手工创建d:\gopath\src\test目录,这个test目录就是我们预设的一个具体工程目录,也可以设置其他名称。这个test在Go中称为一个package.

知识点:package包:

1.注意在GO中一个具体的目录称为一个package包,强烈建议目录名和package包一致,否则容易出问题

2.每个子目录中只能存在一个package,否则编译时会报错

3.go的package是以绝对路径GOPATH来寻址的,不要用相对路径来import

初始工程实例:

在d:\gopath\src\test路径下使用命令:go mod init test

表示在test目录中创建mod.

使用完成后查看d:\gopath\src\test路径下会新生成两个文件:

go.mod文件:内容类似这样的(共两行)

module test

go 1.16

再使用命令:go get github.com/360EntSecGroup-Skylar/excelize/v2

go语言编程实例及用法(Go语言学习4如何使用mod)(2)

现在go.mod文件内容变成了三行:

module test

go 1.16

require github.com/360EntSecGroup-Skylar/excelize/v2 v2.3.2 // indirect

后来我将依据这个test工程包来做些入门小示例

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页