go 语言项目

2022-10-07  本文已影响0人  有m道理

编辑器选择:

首选goland,确实,挺好用;用过的都这么说。

入口函数, main 包

1.main函数为整个应用程序的入口

2.main函数的包名必须为main

3.main包可以包含多个文件

多个文件管理

放在不同的目录,package 区别不同包名。包名和文件夹名可以不一致。

编译,运行

编译go build

1.编译当前目录

1.go build

2. go build .

2.编译指定文件或目录

  1. go build ./main.go
  2. go build ./p1 #编译指定文件或目录

3.main 包有多个文件的情况,指定文件编译main包

1.go build ./main.go ./hello.go

4.编译时指定编译结果输出

1. go build -o ./out/app ./main.go ./hello.go

运行go run

1.直接通过go run 运行main包,即可运行引用程序

1.go run ./main.go ./hello.go

2. go run .

交叉编译

交叉编译需要修改GOOS,GOARCH, CGO_ENABLED三个环境变量

GOOS:目标平台的操作系统(darwin, freebsd, linux, windows)

GOARCH:目标平台的体系架构32位还是64位(386, amd64, arm)

CGO_ENABLED:是否启用CGO,交叉编译不支持CGO所以要禁用它

windows 编译Linux 与 Mac可执行程序

windows--Linux

1.$Env:CGO_ENABLED=0;$Env:GOARCH="amd64";$Env:GOOS="linux"

2.go build -o ./out/app .

windows--mac

1.$Env:CGO_ENABLED=0;$Env:GOARCH="amd64";$Env:GOOS="darwin"

2.go build -o ./out/app .

mac编译Linux与windows

1.CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o ./out/app .

2.CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o ./out/app.exe .

Linux编译Mac与windows

1.CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o ./out/app .

2.CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o ./out/app.exe .

go mod 依赖管理

1.初始化项目

1.go mod init <项目名称>

2.第三方依赖的引用

1.go get <依赖包>

2.go get -u <依赖包>

3.第三方依赖包引用案例,go.mod文件内会自动添加相关依赖版本信息

1.go get -u github.com/gin-gonic/gin

4.依赖对齐

1.#添加使用而未引用的依赖

2.#删除引用而未使用的依赖

3.go mod tidy

上一篇 下一篇

猜你喜欢

热点阅读