Go语言基础go build命令用法及示例详解
目录
- go build
- 一个Go项目在GOPATH下,会有如下三个目录
- 使用:
- 注意:
go build
1. 用于测试编译多个包或一个main包
2. build命令编译包丢弃非main包编译结果,只是检查是否能够被编译
3. 保留main包编译结果
一个Go项目在GOPATH下,会有如下三个目录
- bin存放编译后的可执行文件
- pkg存放编译后的包文件
- src存放项目源文件
- 一般,bin和pkg目录可以不创建,go命令会自动创建(如 go install),只需要创建src目录即可。
使用:
add.go
package cal // 两个数相加 首字母大写,表示public 方法 func Add(a,b int)int{ return a+b }
subtraction.go
package cal // 两个数相减 首字母大写,表示public 方法 func Subtraction(a,b int) int { return a-b }
main.go
package main import ( "fmt" "cal" //到入自定义的包,cal必须在src文件下,必须和main同一级 ) func main() { fmt.Println("hello word") fmt.Println("相加",cal.Add(10,20)) fmt.Println("相减",cal.Subtraction(40,50)) }
1. 普通包 【非main包】
go build add.go 【编译add.go,不生成exe执行文件】
go build -o add.exe add.go 【指定生成exe执行文件,但是不能运行此文件,不是main包】
2. main包【package main】
go build main.go 【生成exe执行文件】
go build -o main.exe main.go 【指定生成main.exe执行文件】
3. 项目文件夹下有多个文件
进入文件的目录
go build 【默认编译当前目录下的所有go文件】
go build add.go subtraction.go 【编译add.go 和 subtraction.go】
注意:
1. 如果是普通包,当你执行go build之后,它不会产生任何文件。【非main包】
2. 如果是main包,当你执行go
build之后,它就会在当前目录下生成一个可执行文件exe。如果你需要在$GOPATH/bin下生成相应的文件,需要执行go
install,或者使用go build -o 路径/xxx.exe xxx.go
3. 如果某个项目文件夹下有多个文件,而你只想编译某个文件,就可在go build之后加上文件名,例如go build
xxx.go;go build命令默认会编译当前目录下的所有go文件。
4. 你也可以指定编译输出的文件名。我们可以指定go build -o
xxxx.exe,默认情况是你的package名(main包),或者是第一个源文件的文件名(main包)。
5.go build会忽略目录下以“_”或“.”开头的go文件。
以上就是Go语言基础go build命令用法及示例详解的详细内容,更多关于Go语言命令的资料请关注我们其它相关文章!
相关推荐
-
Go语言基础if条件语句用法及示例详解
目录 概述 语法 格式规则 概述 条件语句需要开发者通过指定一个或多个条件 并通过测试条件是否为 true 来决定是否执行指定语句 并在条件为 false 的情况再执行另外的语句. 语法 package main func main() { //第一种格式 if 条件表达式 { 语句1 } //第二种格式 if 初始化表达式; 条件表达式 { 语句1 } //第三种格式 if 初始化表达式; 条件表达式 { 语句1 }else{ 语句2 } //第四种格式 if 初始化表达式; 条件表达式 {
-
Go语言基础类型及常量用法示例详解
目录 基础类型 概述 按类别有以下几种数据类型 数值类型 派生类型 变量 概述 单个变量声明 多个变量声明 基础类型 概述 在 Go 编程语言中,数据类型用于声明函数和变量.数据类型的出现时为了把数据分成所需要用大数据的时候才需要申请大内存,这样可以充分的列用内存. 按类别有以下几种数据类型 数值类型 布尔型 bool:布尔型的值只可以是常量 true 或者 false,默认值为 false. 字符串类型 string:编码统一为 UTF-8 编码标识 Unicode 文本,默认值为空字符串.
-
Go语言基础变量的声明及初始化示例详解
目录 一.概述 二.声明变量 三.编译器推导类型的格式[一定要赋值] 四.短变量声明并初始化 五.匿名变量--没有名字的变量 六.注意 七.案例 一.概述 变量的功能是存储用户的数据 二.声明变量 Go语言的每一个变量都拥有自己的类型,必须经过声明才能开始用 变量的声明格式: var <变量名称> [变量类型] var a int //声明一个整型类型的变量,可以保存整数数值 var b string //声明一个字符串类型的变量 var c float32 //声明一个32位浮点切片类型的变
-
Go语言基础入门应用简介及常用命令
目录 Go语言简介 Go语言的主要特点[重点] Go语言应用 Go语言中常用命令 Go语言中可见性规则[重点] Go语言简介 Go 是一门开源.支持并发.垃圾回收的编译型系统编程语言从 2007 年末由 Robert Griesemer,Rob Pike,Ken Thompson 主持开发,后来还加入了 lan Lance Taylor,Russ Cox 等人并最终在 2009年11月 开源,在 2012 年早些时候发布了 Go 1 稳定版本. Go语言的主要特点[重点] 没有继承多态的面向对象
-
go build和go install的区别介绍
go build: go build 用于编译包生成可执行文件,必须有main包才可以 go install: go install 的作用有两个:主要用来生成库和工具,(如果有main包)编译后生成的可执行工具文件放到 bin 目录.$GOPATH/bin,编译后的库文件放到 pkg 目录下($GOPATH/pkg) 补充:go build 命令 简介 1.用于编译源码文件或代码包 -编译非命令源码文件不会产生任何结果文件 -编译命令源码文件会在该命令的执行目录中生成一个可执行文件 2.执行该
-
Go语言基础枚举的用法及示例详解
目录 概述 一.普通枚举 二.自增枚举 注意 代码 概述 将变量的值一一列举出来,变量只限于列举出来的值的范围内取值 Go语言中没有枚举这种数据类型的,但是可以使用const配合iota模式来实现 一.普通枚举 const ( cpp = 0 java = 1 python = 2 golang = 3 ) 二.自增枚举 iota只能在常量的表达式中使用 fmt.Println(iota) //undefined: iota 它默认开始值是0,const中每增加一行加1 const ( a =
-
Go语言基础switch条件语句基本用法及示例详解
目录 概述 语法 第一种[switch 带上表达式] 第二种[switch 不带表达式] 第三种[switch 初始化,表达式] 注意 示例一[根据今天的日期打印今天星期几] 示例二[根据分数打印A,B,C,D] 示例三[算数] 概述 传入条件的不同,会执行不同的语句 每一个case分支都是唯一的,从上到下逐一测试,直到匹配为止. 语法 第一种[switch 带上表达式] switch 表达式 { case 表达式1,表达式2, ... : 语句块1 case 表达式3, 表达式4, ... :
-
Go语言基础go install命令使用示例详解
目录 go install 一.使用 二.包名和目录名的关系 三.注意 go install 编译并安装代码包,对于库,会生成目标库文件,并且放置到GOPATH/pgk目录下. 对于可执文件,会生成目标可执行文件,并且放置到GOPATH/bin目录下 一.使用 命令 描述 go install lib 编译安装package lib,会为main包在bin下生成可执行exe文件 go install lib2 lib/util 同时编译安装lib2和lib/util两个package. 二.包名
-
Go语言基础go build命令用法及示例详解
目录 go build 一个Go项目在GOPATH下,会有如下三个目录 使用: 注意: go build 1. 用于测试编译多个包或一个main包 2. build命令编译包丢弃非main包编译结果,只是检查是否能够被编译 3. 保留main包编译结果 一个Go项目在GOPATH下,会有如下三个目录 bin存放编译后的可执行文件 pkg存放编译后的包文件 src存放项目源文件 一般,bin和pkg目录可以不创建,go命令会自动创建(如 go install),只需要创建src目录即可. 使用:
-
Go语言基础go doc命令用法及示例详解
目录 go doc 一.使用go doc命令在终端查看 go doc package go doc package/subpackage go doc package function 二.是使用浏览器查看的方式 go doc 为我们提供了快速生成文档以及查看文档的工具,让我们可以很容易的编写查看文档 一.使用go doc命令在终端查看 go doc package 获取包的文档注释 例如: go doc fmt 会显示使用 godoc 生成的 fmt 包的文档注释. go doc packag
-
Go语言基础切片的创建及初始化示例详解
目录 概述 语法 一.创建和初始化切片 make 字面量 二.使用切片 赋值和切片 切片增长 遍历切片 总结 总示例 示例一 两个slice是否相等 示例二 两个数字是否包含 概述 切片是一种动态数组 按需自动改变大小 与数组相比,切片的长度可以在运行时修改 语法 一.创建和初始化切片 make 使用内置函数make()创建切片: var slice []type = make([]type, len, cap) //简写: slice := make([]type, len, cap) 字面
-
Go语言基础map用法及示例详解
目录 概述 语法 声明和初始化 读取 删除 遍历 总结 示例 概述 map是基于key-value键值对的无序的集合 Go语言中的map是引用类型 必须初始化才能使用. 语法 声明和初始化 配合make使用,否则是nil var map[KeyType]ValueType //KeyType:表示键的类型 //ValueType:表示键对应的值的类型 make(map[KeyType]ValueType, [cap]) //cap表示map的容量,该参数虽然不是必须的,但是我们应该在初始化map
-
Go语言基础函数基本用法及示例详解
目录 概述 语法 函数定义 一.函数参数 无参数无返回 有参数有返回 函数值传递 函数引用传递 可变参数列表 无默认参数 函数作为参数 二.返回值 多个返回值 跳过返回值 匿名函数 匿名函数可以赋值给一个变量 为函数类型添加方法 总结 示例 概述 函数是基本的代码块,用于执行一个任务 语法 函数定义 func 函数名称( 参数列表] ) (返回值列表]){ 执行语句 } 一.函数参数 无参数无返回 func add() 有参数有返回 func add(a, b int) int 函数值传递 fu
-
Go语言基础for循环语句的用法及示例详解
目录 概述 语法 注意 示例一 死循环,读取文件 示例二 打印乘法表 示例三 遍历字符串,数组,map 概述 for循环是一个循环控制结构,可以执行指定次数的循环 语法 第一种 for {} //无线循环 第二种 for 条件语句{} 第三种 for 初始语句; 条件语句; 迭代后语句 {} 第四种 for key,value:=range 表达式/变量{} 注意 省略初始条件,相当于while循环体必须用 { } 括起来初始化语句和后置语句是可选的如果只剩下条件表达式了,那么那两个分号也
-
Go语言基础数组用法及示例详解
目录 概述 语法 注意 示例 概述 固定长度,数组声明后长度便不能再修改 只能存储一种特定类型元素的序列 语法 编号 方式 代码示例 1 直接声明 var arr [3]int 2 make arr:=make([]int,3) 3 字面量 arr:=[3]int{1,2,3} 4 自动识别长度 arr:=[-]int{1,2,3} 5 二维数组 arr := [4][4]int{{1}, {1, 2}, {1, 2, 3}} 6 new arrp := new([10]int) 7 下标取值
随机推荐
- dos中RD命令递归删除目录的代码
- 右下角弹出窗口效果代码
- 安装使用Mongoose配合Node.js操作MongoDB的基础教程
- Mac下安装tomcat的教程详解
- 一张图看尽Linux内核运行原理
- 封装运动框架实战左右与上下滑动的焦点轮播图(实例)
- 详谈js对url进行编码和解码(三种方式的区别)
- 十大使用PHP框架的理由
- PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法
- 发一个php简单的伪原创程序,配合商城采集用的
- php中通过curl模拟登陆discuz论坛的实现代码
- mysql exists与not exists实例详解
- linux 安装过程全攻略
- 在Linux系统中将Redmine和SVN整合入Nginx的方法
- jQuery Ajax使用心得详细整理及注意事项
- asp中COM组件中如何连接数据库的代码
- java中进程与线程_三种实现方式总结(必看篇)
- 男人偷情与女人偷情的目的
- 一次SQL调优数据库性能问题后的过程(300W)
- jquery mobile实现可折叠的导航按钮