欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解go?mod?使用方法

 更新時間:2022年05月07日 16:13:55   作者:小樓夜聽雨QAQ  
golang 提供了 go mod命令來管理包,是go的一個模塊管理工具,用來代替?zhèn)鹘y(tǒng)的GOPATH方案,本文給大家介紹go?mod?使用方法,感興趣的朋友一起看看吧

go modules 是 golang 1.11 新加的特性?,F(xiàn)在1.12 已經(jīng)發(fā)布了,是時候用起來了。Modules官方定義為:

模塊是相關(guān)Go包的集合。modules是源代碼交換和版本控制的單元。 go命令直接支持使用modules,包括記錄和解析對其他模塊的依賴性。modules替換舊的基于GOPATH的方法來指定在給定構(gòu)建中使用哪些源文件。

如何使用 Modules ?

  • 把 golang 升級到 1.11(現(xiàn)在1.12 已經(jīng)發(fā)布了,建議使用1.12)
  • 設(shè)置 GO111MODULE

go mod是go的一個模塊管理工具,用來代替?zhèn)鹘y(tǒng)的GOPATH方案。下面是基本的使用方法:

假設(shè)我現(xiàn)在想要創(chuàng)建一個項目來學(xué)習(xí)go的語法,項目名為grammar,路徑為 E:/go/grammar。

1、進(jìn)入grammar文件夾

2、初始化目錄

go mod init dayrain.cn/grammar

dayrain.cn/grammar是一個標(biāo)識,一般是 主機(jī)名+模塊名

初始化后,會自動創(chuàng)建一個go.mod文件,有g(shù)o的版本號,以及所依賴的模塊信息。

3、導(dǎo)入自定義的模塊

新建一個lib1包,寫一個簡單的加法函數(shù)

add.go

package lib1
func Add(a int, b int) int {
	return a + b
}

在start.go中調(diào)用此方法

package main
import (
	"dayrain.cn/grammar/lib1"
)
func main() {
	res := lib1.Add(1, 1)
	print(res)
}

運(yùn)行結(jié)果(go run start.go):

4、導(dǎo)入本地沒有的模塊

比如我想用日志打印剛才的res,可以修改start.go文件

package main
import (
	"dayrain.cn/grammar/lib1"
	"github.com/golang/glog"
)
func main() {
	res := lib1.Add(1, 1)
	glog.Info(res)
}

這個時候vscode給出錯誤提示

運(yùn)行 go build命令

提醒我們要先go get github.com/golang/glog 獲取模塊

獲取成功后,go.mod多了一行require。

常用命令

1、初始化模塊

go??mod? init? ?模塊名?

2 、獲取遠(yuǎn)程的模塊

go get? 模塊名? ? ? ? ?

3、 查看當(dāng)前依賴模塊

go list -m all? ? ? ? ???

4、清除未使用到的依賴

go mod tidy? 

到此這篇關(guān)于gomod使用方法的文章就介紹到這了,更多相關(guān)gomod使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Golang共享變量如何解決問題

    Golang共享變量如何解決問題

    協(xié)程之間的通信只能夠通過通道。但是我們習(xí)慣于共享變量,而且很多時候使用共享變量能讓代碼更簡潔。那么Golang共享變量如何解決問題,感興趣的可以了解一下
    2021-12-12
  • Go routine使用方法講解

    Go routine使用方法講解

    goroutine是Go語言提供的語言級別的輕量級線程,在我們需要使用并發(fā)時,我們只需要通過go關(guān)鍵字來開啟goroutine即可。這篇文章主要介紹了GoLang并發(fā)機(jī)制goroutine原理,感興趣的可以了解一下
    2023-01-01
  • Go工具鏈之go tool fix用法詳解

    Go工具鏈之go tool fix用法詳解

    go tool fix 是 Go 工具鏈中的一個命令,作用是把指定 Go 程序代碼包中的的所有舊版本代碼修正為新版本的代碼,本文將簡單介紹一下go tool fix的使用方法,感興趣的小伙伴可以參考閱讀下
    2023-07-07
  • go-micro微服務(wù)JWT跨域認(rèn)證問題

    go-micro微服務(wù)JWT跨域認(rèn)證問題

    JWT 以 JSON 對象的形式安全傳遞信息。因為存在數(shù)字簽名,因此所傳遞的信息是安全的,這篇文章主要介紹了go-micro微服務(wù)JWT跨域認(rèn)證,需要的朋友可以參考下
    2023-01-01
  • 300行代碼實現(xiàn)go語言即時通訊聊天室

    300行代碼實現(xiàn)go語言即時通訊聊天室

    本文主要介紹了300行代碼實現(xiàn)go語言即時通訊聊天室,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • Golang中interface是引用類型的原因解析

    Golang中interface是引用類型的原因解析

    在Go語言中,將interface設(shè)計為引用類型是為了實現(xiàn)更靈活、更動態(tài)的類型系統(tǒng),這篇文章主要介紹了深度解析Golang中為什么interface是引用類型,需要的朋友可以參考下
    2024-01-01
  • 詳解Go中Set的實現(xiàn)方式

    詳解Go中Set的實現(xiàn)方式

    這篇文章主要介紹了詳解Go中Set的實現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Go垃圾回收提升內(nèi)存管理效率優(yōu)化最佳實踐

    Go垃圾回收提升內(nèi)存管理效率優(yōu)化最佳實踐

    這篇文章主要為大家介紹了Go垃圾回收提升內(nèi)存管理效率優(yōu)化最佳實踐,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Go語言范圍Range的具體使用

    Go語言范圍Range的具體使用

    range關(guān)鍵字在for循環(huán)中用于遍歷數(shù)組,切片,通道或映射的項目,本文主要介紹了Go語言范圍Range的具體使用,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • Go語言反射reflect.Value實現(xiàn)方法的調(diào)用

    Go語言反射reflect.Value實現(xiàn)方法的調(diào)用

    本文主要介紹了Go語言反射reflect.Value實現(xiàn)方法的調(diào)用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05

最新評論