go中import包的大坑解決方案_第1頁
go中import包的大坑解決方案_第2頁
go中import包的大坑解決方案_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第go中import包的大坑解決方案目錄方案一:使用GOROOT和GOPATH方案二:使用go.mod最近開始使用Go/GoLand在import自定義包時(shí)出現(xiàn)各種狀況,措手不及,大概在網(wǎng)上找了解決方法,幾乎沒說的清楚的(可能是我個(gè)人理解力比較差哈哈)

個(gè)人喜好加上網(wǎng)上其他人給的解決方法實(shí)在是那個(gè)啥,所以圖文方式解決問題才能事半功倍。

windows環(huán)境下裝的Goland,Mac及其他linux系統(tǒng)參考,了解到本質(zhì)后萬變不離其宗。

方案一:使用GOROOT和GOPATH

(以我本機(jī)為準(zhǔn)舉例講講各種方法)

GOROOT:就是Go的安裝目錄(C:\Go),(類似于java的JDK),里面有bin目錄(C:\Go\bin)GOPATH:是我們的工作空間,保存go項(xiàng)目代碼和第三方依賴包(F:\Go)GOPATH可以設(shè)置多個(gè),其中,第一個(gè)將會是默認(rèn)的包目錄,使用goget下載的包都會在第一個(gè)path中的src目錄下,使用goinstall時(shí),在哪個(gè)GOPATH中找到了這個(gè)包,就會在哪個(gè)GOPATH下的bin目錄生成可執(zhí)行文件

使用GOPATH時(shí),Go會在以下為目錄中搜索包:

GOROOT/src:Go標(biāo)準(zhǔn)庫GOPATH/src:應(yīng)用自身代碼和第三方依賴的代碼

該方法對目錄架構(gòu)要求比較嚴(yán)格例如我的F:\Go\src\awesomeProject1,即必須創(chuàng)建在GOPATH/src

注意說明:sum1包內(nèi)的函數(shù)要大寫,這種方式是嚴(yán)格按照GOROOT和GOPATH的方式,例如main包importawesomeProject1/sum1

包就會在$GOPATH/src(Go/src/awesomeProject1/sum1)路徑下找到。

方案二:使用go.mod

通常大家不喜歡將代碼放在$GOPATH/src下面,此時(shí)importpkg時(shí),就要用到go.mod

從Go1.11版本之后,已經(jīng)不再推薦使用GOPATH來構(gòu)建應(yīng)用了。也就是說GOPATH被認(rèn)為時(shí)廢棄的垃圾的做法。

當(dāng)你開啟了GO111MODULE=on,仍然使用GOPATH模式的方法,在引入自定義模塊時(shí)會報(bào)錯(cuò)。

用Gomodules創(chuàng)建出來的工程中會包含一個(gè)go.mod的文件,工程的位置/路徑隨便

1.設(shè)置環(huán)境變量goenv-wGO111MODULE=on

2.打上這個(gè)小對勾。

3.執(zhí)行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論