最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

go中import包的大坑解決方案

 更新時間:2022年06月07日 15:53:30   作者:劍神卓不凡  
最近開始使用Go/GoLand 在import 自定義包時出現(xiàn)各種狀況,本文就介紹一下go中import包的大坑解決方案,具有一定的參考價值,感興趣 可以了解一下

最近開始使用Go/GoLand 在import 自定義包時出現(xiàn)各種狀況,措手不及,大概在網(wǎng)上找了解決方法,幾乎沒說的清楚的(可能是我個人理解力比較差哈哈)

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

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

方案一:使用GOROOT和GOPATH

(以我本機為準舉例講講各種方法)

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

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

  • GOROOT/src:Go標準庫
  • GOPATH/src:應(yīng)用自身代碼和第三方依賴的代碼

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

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

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

方案二:使用go.mod    

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

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

當你開啟了GO111MODULE=on,仍然使用GOPATH模式的方法,在引入自定義模塊時會報錯。

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

 1. 設(shè)置環(huán)境變量     go env -w GO111MODULE=on      

2.   打上這個小 對勾。

3. 執(zhí)行 go mod init <module name> 。  <module name>非必填,不填的話就會采用項目文件的名稱。

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

相關(guān)文章

  • 談?wù)剬olang IO讀寫的困惑

    談?wù)剬olang IO讀寫的困惑

    這篇文章主要介紹了談?wù)剬olang IO讀寫的困惑,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • golang三元表達式的使用方法

    golang三元表達式的使用方法

    這篇文章主要介紹了golang三元表達式的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 通過Go channel批量讀取數(shù)據(jù)的示例詳解

    通過Go channel批量讀取數(shù)據(jù)的示例詳解

    批量處理的主要邏輯是:從 channel 中接收數(shù)據(jù),積累到一定數(shù)量或者達到時間限制后,將數(shù)據(jù)批量處理(例如發(fā)送到 Kafka 或者寫入網(wǎng)絡(luò)),下面我將展示一個從 Go channel 中批量讀取數(shù)據(jù),并批量發(fā)送到 Kafka 和批量寫入網(wǎng)絡(luò)數(shù)據(jù)的示例,需要的朋友可以參考下
    2024-10-10
  • Go語言錯誤處理異常捕獲+異常拋出

    Go語言錯誤處理異常捕獲+異常拋出

    這篇文章主要介紹了Go語言錯誤處理異常捕獲和異常拋出,Go語言的作者認為java等語言的錯誤處理底層實現(xiàn)較為復(fù)雜,就實現(xiàn)了函數(shù)可以返回錯誤類型以及簡單的異常捕獲,雖然簡單但是也非常精妙,大大的提高了運行效率,下文需要的朋友可以參考一下
    2022-02-02
  • Go語言中常量和變量的定義、使用規(guī)范及常見應(yīng)用場景

    Go語言中常量和變量的定義、使用規(guī)范及常見應(yīng)用場景

    每一門語言都會有常量的定義,變量的定義,以及基于這些定義的運算,下面這篇文章主要給大家介紹了關(guān)于Go語言中常量和變量的定義、使用規(guī)范及常見應(yīng)用場景的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-06-06
  • 基于Go+OpenCV實現(xiàn)人臉識別功能的詳細示例

    基于Go+OpenCV實現(xiàn)人臉識別功能的詳細示例

    OpenCV是一個強大的計算機視覺庫,提供了豐富的圖像處理和計算機視覺算法,本文將向你介紹在Mac上安裝OpenCV的步驟,并演示如何使用Go的OpenCV綁定庫進行人臉識別,需要的朋友可以參考下
    2023-07-07
  • go語言題解LeetCode1160拼寫單詞示例詳解

    go語言題解LeetCode1160拼寫單詞示例詳解

    這篇文章主要為大家介紹了go語言題解LeetCode1160拼寫單詞示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • GO語言常用的文件讀取方式

    GO語言常用的文件讀取方式

    這篇文章主要介紹了GO語言常用的文件讀取方式,涉及一次性讀取、分塊讀取與逐行讀取等方法,是非常實用的技巧,需要的朋友可以參考下
    2014-12-12
  • Go語言輕量級線程Goroutine用法實例

    Go語言輕量級線程Goroutine用法實例

    這篇文章主要介紹了Go語言輕量級線程Goroutine用法,實例分析了goroutine使用技巧,需要的朋友可以參考下
    2015-02-02
  • Golang實現(xiàn)IO操作

    Golang實現(xiàn)IO操作

    本文主要介紹了Golang實現(xiàn)IO操作,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05

最新評論

恩施市| 武鸣县| 根河市| 镇原县| 乌兰浩特市| 会宁县| 晋宁县| 贵溪市| 高尔夫| 百色市| 喜德县| 岐山县| 洪洞县| 平谷区| 安远县| 独山县| 九寨沟县| 榆中县| 景谷| 沅陵县| 东丽区| 祥云县| 托克逊县| 湘西| 兰坪| 新化县| 桃源县| 惠东县| 商丘市| 梁山县| 廊坊市| 澳门| 封丘县| 甘肃省| 松江区| 汾阳市| 东乡县| 新郑市| 扶风县| 民乐县| 清徐县|