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

Mac上Go環(huán)境和VS Code的正確安裝與配置方法

 更新時間:2018年03月14日 11:53:51   投稿:wdc  
Go語言是一個新興的語言。下面介紹一下如何在Mac系統(tǒng)下安裝和使用這個語言,Go語言提供了mac下安裝包,可直接下載安裝包點擊安裝

Go語言是Google新推出的結(jié)合了動態(tài)語言和靜態(tài)語言優(yōu)勢的一個新興的語言。下面介紹一下如何在Mac系統(tǒng)下安裝和使用這個語言。

1.下載SDK

https://studygolang.com/dl 下載對應(yīng)的SDK

Mac版本如下:

1.1 安裝版:go1.8.darwin-arm64.pkg

下載完成之后,直接雙擊打開安裝即可

1.2 壓縮版:go1.8.darwin-arm64.tar

下載完成后需要解壓,然后自己移動到要存放的路徑下,并且配置環(huán)境變量等信息。

2.安裝Go環(huán)境

選擇1.8版本的安裝版,雙擊安裝。安裝完成后,打開terminal ,輸入如下命令,查看安裝的版本:

go version

3.配置環(huán)境變量

打開terminal

3.1 cd ~進入用戶主目錄,

3.2 ls -all查看是否存在.bash_profile

3.3 vim .bash_profile打開并編輯該文件

3.4 根據(jù)自己的實際情況配置路徑,我配置到了外置硬盤中

export GOPATH=/Volumes/gnhxsk/mygo
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN

GOPATH:日常開發(fā)的根目錄,Go從1.1版本到1.7版本必須設(shè)置這個變量,而且不能和Go的安裝目錄一樣,這個目錄用來存放Go源碼,Go的可運行文件,以及相應(yīng)的編譯之后的包文件。所以,這個目錄下面有三個子目錄:src、bin、pkg

src 存放源代碼(比如:.go .c .h .s等)
pkg 編譯后生成的文件(比如:.a)
bin 編譯后生成的可執(zhí)行文件(為了方便,可以把此目錄加入到$PATH變量中,
如果有多個gopath,那么使用${GOPATH//://bin:}/bin

GOBIN:是GOPATH下的bin目錄

PATH:環(huán)境變量。需要gobin目錄加入到path路徑下,生成可執(zhí)行文件就可以直接運行了。

3.5 退出vim,執(zhí)行下面的命令完成對golang環(huán)境變量的配置。

source ~/.bash_profile

3.6 go env查看配置后的效果

4.Hellow World

src目錄是開發(fā)程序的主要目錄,所有的源碼是放在這個目錄下面。

例如:$GOPATH/src/mymath表示mymath這個應(yīng)用包或者可執(zhí)行應(yīng)用,這個是根據(jù)package是main還是其他來決定,main的話是可執(zhí)行應(yīng)用,其他的話就是應(yīng)用包.

4.1 執(zhí)行如下代碼,在src文件夾下創(chuàng)建mymath文件夾

cd $GOPATH/src
mkdir mymath

4.2 新建文件sqrt.go

package mymath
func Sqrt(x float64) float64{
  z := 0.0
  for i := 0; i < 1000; i ++{
  z -= (z * z - x) / (2 * x)
  }
  return z
}

4.3 編譯應(yīng)用

4.3.1 進入對應(yīng)的應(yīng)用包目錄。然后執(zhí)行g(shù)o install,安裝

4.3.2 在任意目錄下執(zhí)行g(shù)o install mymath,安裝

安裝完成之后,可以進入如下目錄,查看應(yīng)用包

cd $GOPATH/pkg/${GOOS}_${GOARCH}
ls
mymath.a

4.4 調(diào)用應(yīng)用包

4.4.1 新建應(yīng)用包

cd $GOPATH/src
mkdir mathapp
cd mathapp
vim mian.go

main.go源碼:

package main
import(
  "mymath"
  "fmt"
)
func main(){
  fmt.Printf("Hello,world. Sqrt(2) = %v\n",mymath.Sqrt(2))
}

4.4.2 編譯程序

進入該應(yīng)用目錄,然后執(zhí)行g(shù)o build,那么在該目錄下面會生成一個mathapp的可執(zhí)行文件

./mathapp

輸出如下內(nèi)容

Hello,world. Sqrt(2) = 1.414213562373095

4.4.3 安裝該應(yīng)用

進入該目錄執(zhí)行g(shù)o install,那么在$GOPATH/bin下增加了一個可執(zhí)行文件mathapp,在terminal中輸入如下命令可以執(zhí)行

mathapp

也可以輸出如下內(nèi)容

Hello,world. Sqrt(2) = 1.414213562373095

5.安裝VS Code

5.1 到https://code.visualstudio.com下載Visual Studio Code,直接使用

5.2 安裝Go插件

5.2.1 點擊右邊的Extensions圖標(biāo),搜索Go插件,選擇Go進行安裝,安裝之后,系統(tǒng)會提示重啟Visual Studio Code

5.2.2 可以打開自動保存功能。開啟方法:選擇菜單File,勾選

5.2.3 用戶設(shè)置

在頂部菜單選擇Code->首選項->設(shè)置

{
 "files.autoSave": "off",
 "go.buildOnSave": true,
 "go.lintOnSave": true,
 "go.vetOnSave": true,
 "go.buildFlags": [],
 "go.lintFlags": [],
 "go.vetFlags": [],
 "go.coverOnSave": false,
 "go.useCodeSnippetsOnFunctionSuggest": false,
 "go.formatOnSave": true,
 "go.formatTool": "goreturns",
 "go.goroot": "/usr/local/go",// 你的Goroot
 "go.gopath": "/Volumes/gnhxsk/mygo",// 你的Gopath
}

5.2.4 安裝依賴包支持

* 自動安裝:選擇一個.go文件拖進入VS Code,然后VS Code會提示你安裝依賴包,選擇install all即可

* 手動安裝:打開terminal,執(zhí)行以下命令

go get -u -v github.com/nsf/gocode
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/zmb3/gogetdoc
go get -u -v github.com/golang/lint/golint
go get -u -v github.com/lukehoban/go-outline
go get -u -v sourcegraph.com/sqs/goreturns
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v github.com/tpng/gopkgs
go get -u -v github.com/newhook/go-symbols
go get -u -v golang.org/x/tools/cmd/guru
go get -u -v github.com/cweill/gotests/...

5.2.5 Visual Studio Code支持Go語言調(diào)試

執(zhí)行以下命令:

go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
brew install go-delve/delve/delve
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv

修改“dlv-cert”證書

1.打開“鑰匙串訪問”
2.打開菜單->鑰匙串訪問->證書助理->創(chuàng)建證書
3.名稱:dIv 身份類型:自簽名證書 證書類型:代碼簽名 并選擇“讓我覆蓋這些默認值”
4.單擊“繼續(xù)”,有限期(天數(shù)):365,可以自己修改,3650
5.一直繼續(xù),直到看到“指定用于該證書的位置”鑰匙串,選擇“系統(tǒng)”并單擊“創(chuàng)建”按鈕
6.重啟Finder,再打開“鑰匙串訪問”,選擇“系統(tǒng)”,就會看到創(chuàng)建好的“dlv-cert”證書
7.右鍵”dlv-cert”證書,選擇“顯示簡介->信任->代碼簽名”修改為:始終信任
8.打開terminal,進入到之前安裝好的$GOPATH/src目錄下的dlv源碼文件目錄:github.com/derekparker/delve
9.輸入如下命令就可以重新編譯出一個帶代碼簽名的dlv執(zhí)行程序

GO15VENDOREXPERIMENT=1 CERT=dlv-cert make install

可能會遇到的問題

The execution file “./dlv -h” always return >> killed:9

stackoverflow解決方式:

I need to do this step below

brew install go-delve/delve/delve
and go to $GOPATH/src/github.com/derekparker
git clone https://github.com/derekparker/delve.git
CERT=dlv-cert make install
(remove old dlv > brew install delve > codesign dlv)

not just run
go get github.com/derekparker/delve/cmd/dlv

and it works now.
 

重啟Visual Studio Code,就可以完美使用了。推薦插件:vscode-icons

上面即是在Mac上Go環(huán)境和VS Code的正確安裝與配置方法,如果遇到安裝或配置問題,可以聯(lián)系我們

相關(guān)文章

  • Go語言使用Gob傳輸數(shù)據(jù)

    Go語言使用Gob傳輸數(shù)據(jù)

    本文主要介紹了Go語言使用Gob傳輸數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 淺析Go語言容器之?dāng)?shù)組和切片的使用

    淺析Go語言容器之?dāng)?shù)組和切片的使用

    在?Java?的核心庫中,集合框架可謂鼎鼎大名:Array?、List、Set等等,隨便拎一個出來都值得開發(fā)者好好學(xué)習(xí)如何使用甚至是背后的設(shè)計源碼。雖然Go語言沒有如此豐富的容器類型,但也有一些基本的容器供開發(fā)者使用,接下來讓我們認識一下這些容器類型吧
    2022-11-11
  • Go語言的接口詳解

    Go語言的接口詳解

    這篇文章主要介紹了go語言的接口,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧,希望能夠給你帶來幫助
    2021-10-10
  • Golang-如何判斷一個?interface{}?的值是否為?nil

    Golang-如何判斷一個?interface{}?的值是否為?nil

    interface?的內(nèi)部實現(xiàn)包含了兩個字段,一個是?type,一個是?data,這篇文章主要介紹了Golang-如何判斷一個interface{}的值是否為nil,需要的朋友可以參考下
    2023-05-05
  • Go語言sync.Pool對象池使用場景基本示例

    Go語言sync.Pool對象池使用場景基本示例

    這篇文章主要為大家介紹了Go語言sync.Pool對象池使用場景的基本示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • 一文帶你了解Go語言中的指針和結(jié)構(gòu)體

    一文帶你了解Go語言中的指針和結(jié)構(gòu)體

    前面的兩篇文章對?Go?語言的基礎(chǔ)語法和基本數(shù)據(jù)類型以及幾個復(fù)合數(shù)據(jù)類型進行介紹,本文將對?Go?里面的指針和結(jié)構(gòu)體進行介紹,也為后續(xù)文章做鋪墊,感興趣的可以了解一下
    2022-11-11
  • 基于Go語言實現(xiàn)文件上傳服務(wù)的示例代碼

    基于Go語言實現(xiàn)文件上傳服務(wù)的示例代碼

    在 Web 開發(fā)中,文件上傳 是常見需求,例如頭像上傳、文檔存儲、圖片分享等功能,Go 語言的標(biāo)準(zhǔn)庫 net/http 已經(jīng)內(nèi)置了對 multipart/form-data 類型的支持,能讓我們輕松構(gòu)建一個文件上傳服務(wù),本文將帶你實現(xiàn)一個可運行的文件上傳接口,需要的朋友可以參考下
    2025-08-08
  • 使用Golang編寫一個簡單的命令行工具

    使用Golang編寫一個簡單的命令行工具

    Cobra是一個強大的開源工具,能夠幫助我們快速構(gòu)建出優(yōu)雅且功能豐富的命令行應(yīng)用,本文將利用Cobra編寫一個簡單的命令行工具,感興趣的可以了解下
    2023-12-12
  • axios?gin的GET和POST請求實現(xiàn)示例

    axios?gin的GET和POST請求實現(xiàn)示例

    這篇文章主要為大家介紹了axios?gin的GET和POST請求實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • Go語言中多字節(jié)字符的處理方法詳解

    Go語言中多字節(jié)字符的處理方法詳解

    這篇文章主要給大家介紹了關(guān)于Go語言中多字節(jié)字符的處理方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-10-10

最新評論

克什克腾旗| 南部县| 木兰县| 滁州市| 民权县| 渝中区| 韩城市| 汉源县| 平乡县| 泸州市| 安远县| 青铜峡市| 张家港市| 张家港市| 普定县| 淮安市| 泾川县| 西宁市| 泰和县| 永泰县| 鹿邑县| 秦安县| 昔阳县| 巴林右旗| 稻城县| 荔波县| 封丘县| 安阳县| 文登市| 鲁山县| 石屏县| 繁峙县| 河北省| 巩留县| 元谋县| 柳林县| 兴海县| 平安县| 昌都县| 玉环县| 芜湖市|