Go语言中使用 go build 命令主要用于编译代码。在包的编译过程中,若有必要,会同时编译与之相关联的包。
一、直接goland运行
- 点击运行按钮
二、终端运行 go build
# 直接运行
go build
如果需要指定输出可执行文件名,可以使用-o
go build -o testdata
- go build 编译时的附加参数
-v 编译时显示包名
-p n 开启并发编译,默认情况下该值为 CPU 逻辑核数
-a 强制重新构建
-n 打印编译时会用到的所有命令,但不真正执行
-x 打印编译时会用到的所有命令
-race 开启竞态检测
三、go run
报错undefined,执行的时候使用go run ./ 可以解决
# go run 如果带文件命,会报错某个导入失败,直接 go run ./
# 可能因为之后一个main, 所以可以这样
四、golang run时报undefined错误总结
4.1 原因
go run: 会先进行编译操作,而在此处的编译它只会以这个main.go为准,导致引用其他文件出现找不到的情况
go build:不一样,它会自动查找引用文件并打包
4.2 解决办法
参考文章:
golang run时报undefined错误
-
方法一:指定多个文件
go run main.go a.go -
方法二:指定全部文件
go run *.go -
方法三:
go build