Go语言介绍

与C和C++语言类似,Go语言是编译类型的语言。Go语言源程序经过Go编译器编译,生成独立的二进制ELF(Linux)/EXE(Windows) 格式的可执行文件,运行时不再需要Go源程序参与。

Go语言如何使用第三方模块

Go语言通过import语句引入第三方模块。示例代码:

package main
import (
    tingyun "github.com/TingYunGo/goagent"
)
func RoutineID() int64 {
    return tingyun.GetGID()
}

其中:tingyun 为引入模块的别名。

如果只是引入模块,并不直接使用模块的方法,那么引入模块的别名需要使用下划线 _ 代替,否则Go编译器提示错误:

package main
import (
    _ "github.com/TingYunGo/goagent"
)

Go语言第三方模块如何下载安装到本地

Go语言的所有第三方模块都是源代码形式发布到Git服务器上的。第三方模块的下载安装分为 GOPATH 模式和 GOMOD 模式两种情况。

  • GOPATH模式 : Go语言版本低于1.11,或者禁用了GOMOD(设置环境变量GO111MODULE=off)模式时,处于GOPATH模式。这种模式下,Go编译器检测GOPATH环境变量,在GOPATH环境变量指定的每个路径下根据名字查找第三方库。GOPATH未设置时,缺省值是当前用户的根路径下的 go 文件夹。 GOPATH模式下,第三方模块安装有两种方法:

    • 自动安装: 使用命令 go get <第三方库路径>。例如,安装基调听云Go探针:

      $ go get github.com/TingYunGo/goagent
      

      命令执行后,会自动下载模块到GOPATH下的src/github.com/TingYunGo/goagent 目录下,并且递归下载该模块依赖的模块到相应目录。

    • 手动安装: 在GOPATH下手动创建目录src/github.com/TingYunGo/goagent,并将代码复制到该文件夹下。

  • GOMOD模式:Go语言版本大于等于1.11,并且设置环境变量GO111MODULE=on时,处于GOMOD模式。 GOMOD 模式下,在Go应用的根路径下需要配置go.mod文件,主要内容为应用名、Go语言版本和依赖包及版本。 示例:

    module http_example
    go 1.12
    require (
        github.com/TingYunGo/goagent v0.7.8
        github.com/golang/protobuf v1.5.2 // indirect
    )
    

    其中:

    • http_example 是应用的名字。
    • go 1.12:是要求Go版本不低于 v1.12。
    • require:这部分指定依赖的第三方模块及对应的版本。

    GOMOD模式下依赖包的下载:

    • 使用命令go mod tidy,这个命令将自动检查当前应用的依赖并下载所有依赖包,并且校验依赖包的hash值,写入到go.sum文件。

Go语言应用如何编译

进入应用源代码路径,执行 go build 命令,即可生成应用的可执行文件。

results matching ""

    No results matching ""