執(zhí)行g(shù)o?build報(bào)錯(cuò)go:?go.mod?file?not?found?in?current?directory?or?any?parent?directory
執(zhí)行命令go build -n
執(zhí)行命令go build -n時(shí)提示:go: go.mod file not found in current directory or any parent directory; see 'go help modules'
根據(jù)提示信息我們可以看出是項(xiàng)目目錄下缺少go.mod文件,那么如何才能生成此文件呢?
第一步:開啟Go Modules功能
go module
是go官方自帶的go依賴管理功能,從Go 1.13版本正式推薦使用,它可以將項(xiàng)目下的所有依賴集中到 go.mod 文件,進(jìn)行集中管理。使用go module
管理依賴將會(huì)在項(xiàng)目根目錄下生成兩個(gè)文件 go.mod
(負(fù)責(zé)記錄當(dāng)前項(xiàng)目的所有依賴)和go.sum
(記錄每個(gè)依賴庫的版本和哈希值)
我們使用如下命令開啟go modules
功能:
go env -w GO111MODULE=on
GO111MODULE介紹
GO111MODULE
是go modules
功能的開關(guān):
- GO111MODULE=off,關(guān)閉go modules功能,go命令行將不會(huì)支持module功能,尋找依賴包的方式將會(huì)沿用舊版本那種通過vendor目錄或者GOPATH模式來查找。
- GO111MODULE=on,開啟go modules功能,go命令行會(huì)使用modules,而一點(diǎn)也不會(huì)去GOPATH目錄下查找。
- GO111MODULE=auto,默認(rèn)值,go命令會(huì)根據(jù)當(dāng)前目錄中是否有g(shù)o.mod文件來決定是否啟用module功能。這種情況下可以分為兩種情形:
1、當(dāng)項(xiàng)目路徑在GOPATH
目錄外部時(shí), 設(shè)置為GO111MODULE = on
2、當(dāng)項(xiàng)目路徑位于GOPATH
內(nèi)部時(shí),即使存在go.mod
, 設(shè)置為GO111MODULE = off
第二步:生成go.mod文件
在當(dāng)前項(xiàng)目目錄下,執(zhí)行如下命令生成go.mod
文件:
go mod init [項(xiàng)目文件夾名稱]
Go Mod相關(guān)命令
可以使用go mod help
命令進(jìn)行相關(guān)命令和解釋查看
go mod init <項(xiàng)目目錄名稱> //初始化模塊,自動(dòng)生成go.mod文件 go mod download [path@version] //下載指定依賴 go mod edit -json //編輯go.mod文件 可選項(xiàng)有-json、-require和-exclude go mod graph //以文本模式打印模塊需求圖 go mod tidy //刪除錯(cuò)誤或者不使用的modules go mod vendor //將依賴包復(fù)制到項(xiàng)目的vendor目錄 go mod verify //驗(yàn)證依賴是否正確 go mod why //查找依賴 go list -m all //顯示依賴關(guān)系 go list -m -json all //顯示完整依賴關(guān)系
也可以使用命令go help mod <command>
查看mod
先關(guān)命令使用方法。
以上就是執(zhí)行g(shù)o build報(bào)錯(cuò)go: go.mod file not found in current directory or any parent directory的詳細(xì)內(nèi)容,更多關(guān)于go build報(bào)錯(cuò)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
go的websocket實(shí)現(xiàn)原理與用法詳解
這篇文章主要介紹了go的websocket實(shí)現(xiàn)原理與用法,詳細(xì)分析了websocket的功能、原理及Go語言實(shí)現(xiàn)websocket的相關(guān)技巧,需要的朋友可以參考下2016-07-07深入理解Go語言設(shè)計(jì)模式之函數(shù)式選項(xiàng)模式
在 Go 語言中,函數(shù)選項(xiàng)模式(Function Options Pattern)是一種常見且強(qiáng)大的設(shè)計(jì)模式,用于構(gòu)建可擴(kuò)展、易于使用和靈活的 API,本文就來看看它的具體用法吧2023-05-05golang實(shí)現(xiàn)讀取excel數(shù)據(jù)并導(dǎo)入數(shù)據(jù)庫
Go 語言是一門適合用于編寫高效且并發(fā)的 Web 應(yīng)用程序的編程語言,同時(shí)也可以使用它進(jìn)行數(shù)據(jù)處理和分析,本文主要介紹了如何通過go語言實(shí)現(xiàn)讀取excel數(shù)據(jù)并導(dǎo)入數(shù)據(jù)庫,感興趣的小伙伴可以了解下2025-04-04golang 微服務(wù)之gRPC與Protobuf的使用
這篇文章主要介紹了golang 微服務(wù)之gRPC與Protobuf的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-023個(gè)Go語言中實(shí)用重構(gòu)技術(shù)分享
代碼重構(gòu)是在不改變外部功能的情況下對現(xiàn)有代碼進(jìn)行改進(jìn),是編程的核心部分之一,本文為大家介紹了Go語言中3個(gè)實(shí)用重構(gòu)技術(shù),需要的可以參考一下2023-06-06go將request?body綁定到不同的結(jié)構(gòu)體中教程
這篇文章主要為大家介紹了go將request?body綁定到不同的結(jié)構(gòu)體中教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10