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

使用Go module和GoLand初始化一個Go項目的方法

 更新時間:2020年12月24日 10:49:20   作者:南瓜慢說  
這篇文章主要介紹了使用Go module和GoLand初始化一個Go項目,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1 簡介

Golang 是一門優(yōu)秀的語言,特別是在并發(fā)編程上,得益于它的協程和 channel 等,非常方便易用。它通過 go module 來管理包和依賴,本文介紹如何利用它創(chuàng)建一個項目。

2 重要的環(huán)境變量

Go 通過環(huán)境變量來做項目上的管理和控制,通過命令 go env 可以查看相關變量:

$ go env
GO111MODULE="on"
GOARCH="amd64"
GOHOSTOS="darwin"
GOMODCACHE="/Users/larry/go/pkg/mod"
GOPATH="/Users/larry/go"
GOPROXY="https://mirrors.aliyun.com/goproxy/"
GOROOT="/Users/larry/Software/go"
GOTOOLDIR="/Users/larry/Software/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"

關鍵環(huán)境變量:

GOROOTGo 的安裝目錄,即可執(zhí)行文件所在的目錄;

GOPATH :工作目錄并不是項目所有目錄,編譯后的二進制文件存放地, import 包的搜索路徑,主要包含 binpkg 、 src ;

GO111MODULE :啟用 go module 管理項目,需要有 go.modgo.sum 文件;

GOPROXY :下載依賴時的代理,必須配置,不然無法成功下載;

常用的代理有:

# 1. 七牛 CDN
export GOPROXY=https://goproxy.cn,direct

# 2. 阿里云
export GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

# 3. 官方
export GOPROXY=https://goproxy.io,direct

個人用阿里云比較多。

3 初始化項目

用命令執(zhí)行如下:

# 創(chuàng)建project的目錄
$ mkdir pkslow_test
# 進入目錄
$ cd pkslow_test/
# 初始化
$ go mod init pkslow.com/pkslow_test
go: creating new go.mod: module pkslow.com/pkslow_test

$ l
-rw-r--r-- 1 larry staff 39 Dec 13 21:07 go.mod
#查看文件內容
$ cat go.mod 
module pkslow.com/pkslow_test

go 1.15

新建文件 main.go ,開始寫代碼:

package main
import "fmt"
func main() {
 fmt.Println("hello pkslow")
}

執(zhí)行或編譯后執(zhí)行:

# 直接run
$ go run main.go 
hello pkslow

# 編譯成二進制文件
$ go build
t$ l
-rw-r--r-- 1 larry staff 39 Dec 13 21:07 go.mod
-rw-r--r-- 1 larry staff 74 Dec 13 21:12 main.go
-rwxr-xr-x 1 larry staff 2146904 Dec 13 21:12 pkslow_test
# 執(zhí)行二進制文件
$ ./pkslow_test 
hello pkslow

4 引入本地包

創(chuàng)建目錄與文件結構如下:

$ tree
├── go.mod
├── main.go
└── mylog
 └── pkslow_log.go

新建 pkslow_log.go 的內容如下:

package mylog
import "fmt"

func PkslowLog(str string) {
 fmt.Println(str)
}

修改后的 main.go 的內容如下:

package main
import (
	"fmt"
	"pkslow.com/pkslow_test/mylog"
)

func main() {
 fmt.Println("hello pkslow")
 mylog.PkslowLog("www.pkslow.com")
}

執(zhí)行如下:

$ go run main.go 
hello pkslow
www.pkslow.com

5 GoLand打開項目

以上已經基本完成了項目的創(chuàng)建,但使用 IDE 寫代碼會更高效率,直接使用 GoLand 打開項目即可。一些關鍵配置如下:

GOROOT:

GOPATH:

Go Module:

最終項目整體結構如下:

6 總結

Go 語言還是挺有意思的,值得一試。

到此這篇關于使用Go module和GoLand初始化一個Go項目的文章就介紹到這了,更多相關Go module和GoLand初始化Go項目內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • golang構建工具Makefile使用詳解

    golang構建工具Makefile使用詳解

    這篇文章主要為大家介紹了golang構建工具Makefile的使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • Golang map如何生成有序的json數據詳解

    Golang map如何生成有序的json數據詳解

    最近在學習Golang,發(fā)現了一個問題,覺著有必要給大家總結下,下面這篇文章主要給大家介紹了關于Golang map如何生成有序json數據的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友們下面來一起看看吧。
    2017-07-07
  • 一文掌握go的sync.RWMutex鎖

    一文掌握go的sync.RWMutex鎖

    這篇文章主要介紹了一文掌握go的sync.RWMutex鎖,本文是為了在面試中能快速口述RW鎖,并非為了完整解答RW鎖的機制,需要的朋友可以參考下
    2023-03-03
  • Go語言map不支持并發(fā)寫操作的原因

    Go語言map不支持并發(fā)寫操作的原因

    Go語言為什么不支持并發(fā)讀寫map?,Go官方的說法是在多數情況下map只存在并發(fā)讀操作,如果原生支持并發(fā)讀寫,即降低了并發(fā)讀操作的性能,在使用?map?時,要特別注意是否存在對?map?的并發(fā)寫操作,如果存在,要結合?sync?包的互斥鎖一起使用,
    2024-01-01
  • axios?gin的GET和POST請求實現示例

    axios?gin的GET和POST請求實現示例

    這篇文章主要為大家介紹了axios?gin的GET和POST請求實現示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • Go錯誤和異常CGO?fallthrough處理教程詳解

    Go錯誤和異常CGO?fallthrough處理教程詳解

    這篇文章主要為大家介紹了Go錯誤和異常CGO?fallthrough使用教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • Go語言的互斥鎖的詳細使用

    Go語言的互斥鎖的詳細使用

    本文主要介紹了Go語言的互斥鎖的詳細使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • go語言-在mac下brew升級golang

    go語言-在mac下brew升級golang

    這篇文章主要介紹了go語言-在mac下brew升級golang,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • Go處理json數據方法詳解(Marshal,UnMarshal)

    Go處理json數據方法詳解(Marshal,UnMarshal)

    這篇文章主要介紹了Go處理json數據的方法詳解,Marshal(),UnMarshal(),需要的朋友可以參考下
    2022-04-04
  • Go語言通過Luhn算法驗證信用卡卡號是否有效的方法

    Go語言通過Luhn算法驗證信用卡卡號是否有效的方法

    這篇文章主要介紹了Go語言通過Luhn算法驗證信用卡卡號是否有效的方法,實例分析了Luhn算法的原理與驗證卡號的使用技巧,需要的朋友可以參考下
    2015-03-03

最新評論