linux 下golang環境配置

Linux下配置Golang開發環境

前幾天無意間看到了微信推送的golang開發的消息,看到golang那麼牛逼,突然心血來潮想學習一下go。工慾善其事必先利其器,想做go開發,必須先配置好go的開發環境(就像開發Java先安裝配置jdk一樣)。在網上找了半天,一直沒有找到滿意的教程(看來golang在國內還是不火)遂自己摸索,踩了不少坑,特來記錄一下,希望能幫助到別人,少走彎路。由於我把除了C/C++以外的開發都搬遷到Linux下了,所以就在Ubuntu下安裝配置了golang。其實Windows下的安裝也是大同小異了。

1 先去golang官網下載golang的安裝包

golang的官網在國內訪問比較慢,建議去國內的網站下載https://studygolang.com/dl 根據不同的平臺選擇對應的安裝包

[外鏈圖片轉存中…(img-nE2IOO9B-1589036988614)]

下載.png

2 安裝

Windows的雙擊然後選擇目錄安裝就好了。Linux的用 sudo tar -C /usr/local/ -xzvf go1.10.2.linux-amd64.tar.gz命令解壓到 /urs/local/ 目錄。解壓完成,下一步

3 配置環境變量

在這裏想說句mmp,用網上的教程配置完,要不提示 程序go尚未安裝,要不就 go install 命令無法使用,所以自己摸着石頭過河,終於是過去了。話不多說,開始配置。
/etc/profile或者用戶目錄下的.profile文件中配置環境變量。
這兩個的區別是在/etc/profile下配置對所有用戶起作用,.profile中配置只對當前用戶起作用。我在/etc/profile中配置的執行sudo vim /etc/profile命令,在文件的最後一行加入

 export GOROOT=/usr/local/go
 export GOPATH=/home/bruce/goProject 
 export GOBIN=$GOPATH/bin
 export PATH=$PATH:$GOROOT/bin
 export PATH=$PATH:$GOPATH/bin

不要急,一行一行解釋

GOROOT設置golang的安裝位置,我們解壓到了/usr/local/目錄,該目錄下的go/文件夾一定是go的環境的根目錄,就是打開go目錄後別再有一個go/目錄。

GOBIN目錄是執行 go install 後生成可執行文件的目錄

GOPATH是我們的工作目錄,一般我們設置到用戶目錄下,這個要根據你電腦的實際情況去配置。在介紹一下go的工作目錄結構。在我們設置的工作目錄下有3個子目錄

├── bin
├── pkg
└── src
  • bin文件夾存放go install命令生成的可執行文件,可以把**$GOBIN**路徑加入到PATH環境變量裏,這樣就可以直接在終端裏使用我們go開發生成的程序了。
  • pkg文件夾是存在go編譯生成的文件。
  • src存放的是我們的go源代碼,不同工程項目的代碼以包名區分。

添加完成後保存退出,然後執行source /etc/profile或者註銷重新登錄一下。然後執行go version能看到版本信息說明環境已經搭建好了。

接下來寫個demo來試試。到我們配置的工作目錄中(使用go bulid在那個目錄都可以,使用go install命令必須要在工作目錄下)我的工作目錄是home/bruce/goProject/src/test/新建 test.go寫幾行代碼

package main

import "fmt"
func main() {
    fmt.Println("Hello Golang")
}

然後執行go build one.go,該目錄下會生成一個test*使用./test命令運行,輸出Hello Golang說明成功
接下來試試go install test,然後在工作目錄下的bin目錄下會生成test*文件,到這整個golang的開發環境就配置好了。

最後再推薦幾個IDE,最開發怎能少了IDE呢,首推Jetbrains家的產品,Jetbrains無論那種語言的IDE都很不錯,尤其是Jetbrains家的IDE界面和快捷鍵相同,熟悉一個,全都會用,而且跨平臺。golang開發可以使用Jetbrains goland這是Jetbrains專門爲golang開發的IDE,也可以使用 IDEA+Go插件的形式,我就是用的IDEA+插件,感覺還不錯。還有visual studio code+go插件也挺好,vscode的優勢是輕便。

###go使用代理的方法:

參閱https://github.com/goproxy/goproxy.cn

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

// win10改變go env的cmd命令行是:$env:GOPROXY = "https://proxy.golang.org,direct"

go get 太慢的問題

第一步:使用IP查找工具,找出對應的ip地址。
IP查找工具 http://ipaddress.com/ip-lookup/

查詢github.com 對應IP

查詢github.global.ssl.fastly.net 對應IP

第二步:將對應 Ip 寫入host
192.30.253.112 github.com
151.101.44.249 github.global.ssl.fastly.net
第三步:享受github去吧 :)
原文鏈接:https://blog.csdn.net/github_34889651/article/details/53471108

告別GoPath

新建一個project : D:\Documents\projects\myProject

然後這個project是不在GoPath下的,一般我們需要去指定環境變量中的GoPath,現在,只要cd到該目錄下,執行:go mod init myProject,就可以將這個項目模塊化,然後在根目錄下生成go.mod,這樣vscode中就會認同這個項目也是個模塊了,注意,myProject根目錄中,不需要有src文件夾,本來src文件夾下的源代碼,現在必須直接放在myProject根目錄下,注意,用了go mod之後,就無法使用gopath的src下的包了,go get的包全部在GOPATH/pkg/mod下;

來src文件夾下的源代碼,現在必須直接放在myProject根目錄下,注意,用了go mod之後,就無法使用gopath的src下的包了,go get的包全部在GOPATH/pkg/mod下;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章