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

VsCode搭建Go語言開發(fā)環(huán)境的配置教程

 更新時間:2020年05月11日 14:41:29   作者:鬧鬧吃魚  
這篇文章主要介紹了在VsCode中搭建Go開發(fā)環(huán)境的配置教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

現(xiàn)在Go1.14都已經(jīng)發(fā)布好些日子了,之前發(fā)的Go環(huán)境搭建教程早已過時,只是因?yàn)闀r間問題一直沒來得及更新

這次懷著愧疚的心情,在凌晨四點(diǎn)時,將這教程進(jìn)行一個更新

注意:本教程最大的好處是不需要梯子。 直接在墻內(nèi)可進(jìn)行一切操作,文章寫給純小白的,部分Linux常識解釋的過多,熟悉的人請略過

Go的安裝

安裝基本還是之前的老樣子,不過現(xiàn)在的安裝早已省事不少,不再需要配置環(huán)境變量。直接去官網(wǎng),下載了安裝包后直接安裝即可

在Go中文網(wǎng)進(jìn)行Go最新版安裝包的下載(或者復(fù)制網(wǎng)址瀏覽器打開https://studygolang.com/dl)

不管是Windows還是MacOS都是非常簡單快捷,將安裝包下載好后直接一步到位next即可

Linux下的安裝,就是將下載的Linux安裝包中的go文件夾,解壓到/usr/local路徑即可

在控制臺輸入go version,如果顯示了版本號,即代表安裝成功

Go環(huán)境變量的配置

安裝成功后,環(huán)境變量的配置也沒有以前那么麻煩

僅需要幾步操作即可

1、設(shè)置GOPATH路徑(GOPATH路徑是我們的工作區(qū))

go env -w GOPATH=我們自己的工作區(qū)路徑

例如我的就設(shè)為 /Users/naonao/go

2、什么都別管,先打開GoMOD,再配置代理

在這里感謝「七牛云」為我們中國區(qū)的Golang開發(fā)者提供的代理服務(wù)

$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.cn,direct

做到這2點(diǎn)后,我們現(xiàn)在就可以打開我們的VsCode(再次感謝七牛云,從此以后我們再也不用到Github以及Golang.org上clone到本地進(jìn)行install了)

3、在VSCode中安裝Go插件

進(jìn)入Extensions后直接搜索go,即可安裝

4、在我們的$GOPATH/src目錄下,創(chuàng)建一個hello/hello.go文件,并且用VSCode打開

$GOPATH是指我們剛剛配置的環(huán)境變量。比如上面配置的環(huán)境變量位置為/Users/naonao/go,即$GOPATH就是指/Users/naonao/go這個路徑。那么$GOPATH/src就是指/Users/naonao/go/src目錄)

在安裝了Go插件后的VsCode,現(xiàn)在打開go文件后,會自動安裝我們自己的必要的環(huán)境依賴

5、Go Modules的使用

這玩意非常簡單,我們只需要明白它為什么存在,以及如何用即可

Go mod的存在,是官方強(qiáng)推,為了替代GOPATH而誕生的一個Go語言依賴庫管理器。之前所有的包都丟在GOPATH中,煩skr人

這貨最大的好處就是,我們依賴的包可以指定版本。

其次所有程序依賴的包,只會存在同一份。不會像npm那樣,同一個包還能有n多個存在。這樣我們的電腦就很省空間了

使用起來也非常簡單,常用命令就一個go mod tidy,通俗來說就是將當(dāng)前的庫源碼文件所依賴的包,全部安裝并記錄下來,多的包就刪掉,少了的就自動補(bǔ)上

我們來實(shí)踐操作下

進(jìn)入我們的hello文件夾,并且執(zhí)行go mod init即可

$ cd $GOPATH/src/hello
$ go mod init

可以看到多出了一個go.mod文件和go.sum文件

go.mod文件是記錄我們依賴庫以及版本號

更多的go mod相關(guān)內(nèi)容,可以自己查找別的Blog了,我這就不過多介紹了

此時我們這個hello項(xiàng)目,就采用了go mod進(jìn)行庫依賴管理,以后編寫完代碼后執(zhí)行go mod tidy即可,這個命令會自動下載依賴的庫,也會刪除多余的庫

更多的使用方式可以執(zhí)行go help mod進(jìn)行查看

VSCode的Lunch.json配置以及Setting.json配置

具體怎么進(jìn)入設(shè)置的json文件,老文已經(jīng)圖文并茂的描繪的很詳細(xì)了,我這就不再做過多介紹了

先是你們關(guān)心的Debug配置內(nèi)容

{
 "version": "0.2.0",
 "configurations": [{
  "name": "LaunchGo",
  "type": "go",
  "request": "launch",
  "mode": "auto",
  "program": "${fileDirname}",
  "env": {
  "GOPATH": "填自己的GOPATH路徑",
  "GOROOT": "填自己的GOROOT路徑"
  },
  "args": [],
  //"showLog": true
 }
 ]
}

以下是Setting.json的最新配置,因?yàn)槲疫@個配置同時存在了一些別的組件,比如golangci-lint這種go語言風(fēng)格包以及別的組件,所以復(fù)制到你們的VSCode中時,有些配置會出現(xiàn)紅色異常

將出現(xiàn)紅色異常的地方直接刪除或者注釋即可。之所以保留給你們,是覺得你們可能有些人也會安裝相關(guān)插件使用

{
 "editor.wordWrap": "on",
 // 如果useLanguageServer設(shè)為true,那么在編寫代碼時引入本地沒有的package時,會自動下載安裝
 // 就是有時候會非???,保存go的編碼文件時偶爾會卡死。這點(diǎn)你們自己取舍吧
 "go.useLanguageServer": false,
 "editor.minimap.renderCharacters": false,
 "editor.minimap.enabled": false,
 "terminal.external.osxExec": "iTerm.app",
 "go.docsTool": "gogetdoc",
 "go.testFlags": ["-v","-count=1"],
 "go.buildTags": "",
 "go.buildFlags": [],
 "go.lintFlags": [],
 "go.vetFlags": [],
 "go.coverOnSave": false,
 "go.useCodeSnippetsOnFunctionSuggest": false,
 "go.formatTool": "goreturns",
 "go.gocodeAutoBuild": false,
 "go.goroot": "填寫GOROOT路徑",
 "go.gopath": "填寫GOPATH路徑",
 "go.autocompleteUnimportedPackages": true,
 "go.formatOnSave": true,
 "window.zoomLevel": 0,
 "debug.console.fontSize": 16,
 "debug.console.lineHeight": 30,
}

總結(jié)

到此這篇關(guān)于VsCode搭建Go語言開發(fā)環(huán)境的配置教程的文章就介紹到這了,更多相關(guān)VsCode搭建go開發(fā)環(huán)境內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • golang 對私有函數(shù)進(jìn)行單元測試的實(shí)例

    golang 對私有函數(shù)進(jìn)行單元測試的實(shí)例

    這篇文章主要介紹了golang 對私有函數(shù)進(jìn)行單元測試的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05
  • Golang使用embed引入靜態(tài)文件的實(shí)例代碼

    Golang使用embed引入靜態(tài)文件的實(shí)例代碼

    Golang embed是Go 1.16版本中引入的一項(xiàng)新功能,它可以使嵌入文件更容易,通常,在Go中嵌入文件需要使用文件系統(tǒng)或者第三方包,而使用embed可以更加便捷地嵌入文件,從而方便地訪問文件的內(nèi)容,本文介紹了Golang使用embed引入靜態(tài)文件,需要的朋友可以參考下
    2024-06-06
  • 簡單四步快速集成go環(huán)境變量

    簡單四步快速集成go環(huán)境變量

    這篇文章主要為大家介紹了快速集成go環(huán)境變量的簡單四個步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • 完美解決go Fscanf 在讀取文件時出現(xiàn)的問題

    完美解決go Fscanf 在讀取文件時出現(xiàn)的問題

    這篇文章主要介紹了完美解決go Fscanf 在讀取文件時出現(xiàn)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Gin框架自帶參數(shù)校驗(yàn)的使用詳解

    Gin框架自帶參數(shù)校驗(yàn)的使用詳解

    這篇文章主要為大家詳細(xì)介紹了如何使用Gin框架自帶的參數(shù)校驗(yàn),文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,感興趣的小伙伴可以了解下
    2023-09-09
  • Go官方工具鏈用法詳解

    Go官方工具鏈用法詳解

    Go官方工具鏈工具要求所有的Go源代碼文件必須以.go后綴結(jié)尾。這里,我們假設(shè)一個最簡單的Go程序放在hello.go的文件中,下面通過示例代碼給大家介紹Go官方工具鏈用法簡介,需要的朋友可以參考下
    2021-10-10
  • go連接kafka的實(shí)現(xiàn)示例

    go連接kafka的實(shí)現(xiàn)示例

    本文主要介紹了go連接kafka的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Go Resiliency庫中timeout實(shí)現(xiàn)原理及源碼解析

    Go Resiliency庫中timeout實(shí)現(xiàn)原理及源碼解析

    Go-Resiliency庫中的timeout是一種基于協(xié)程的超時機(jī)制,通過創(chuàng)建協(xié)程來執(zhí)行任務(wù)并設(shè)置超時時間,若任務(wù)執(zhí)行時間超時則中止協(xié)程并返回錯誤,需要詳細(xì)了解可以參考下文
    2023-05-05
  • Go 中 slice 的 In 功能實(shí)現(xiàn)探索

    Go 中 slice 的 In 功能實(shí)現(xiàn)探索

    這篇文章主要介紹了Go 中 slice 的 In 功能實(shí)現(xiàn)探索,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • go語言中切片的長度和容量的區(qū)別

    go語言中切片的長度和容量的區(qū)別

    這篇文章主要介紹了go語言中切片的長度和容量的區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04

最新評論