工作区介绍

栏目: Go · 发布时间: 5年前

内容简介:升级go语言版本建议去官网下载最新的工具包go语言的源码是以代码包为基本组织单位的,在文件系统中,代码包是和目录一一对应的

升级 go 语言版本

建议去官网下载最新的 工具

  • 工作区

    工作区就是程序工作的地方,里面包含go语言的编写源码文件,已经install 安装后的归档文件,以.a为扩展名的文件

  • GOPATH

    环境变量GOPATH 的值可以是一个目录的路径,也可以包含多个目录的路径,每个路径代表一个工作区

  • GOROOT

  • GOBIN

代码包的概念

go语言的源码是以代码包为基本组织单位的,在文件系统中,代码包是和目录一一对应的

1.一个代码包可以有多个以.go为扩展名的源码文件组成如下,demo1.go demo2.go 和 main.go 都属于代码包main,注意同一个目录下的.go 文件只能属于一个代码包

工作区介绍

image.png

如何声明文件属于那个代码包呢?demo1.go demo2.go 和 main.go 文件的头部写上下面的声明

package main

注意这里的main 是包名,但是这个名字可以不和目录名一致,如果不一致,则在构建和安装的时候,已包名为准

2.代码包下面可以有子代码包,如下

工作区介绍

image.png

下面看一张go工作区的结构图

工作区介绍

image.png

go 目录就是GOROOT

src 就是源码文件存放的目录

pkg 安装后如果产生归档文件就会存放在这里

bin 如果产生了可执行的文件就会存放在这里

安装包

在命令行执行安装包命令,将我们的项目文件源码目录awesomeProject就安装到了pkg指定的文件夹下

go install  awesomeProject
工作区介绍

image.png

如果安装的是命令源码文件,则编译后的结果文件会被存放在目录下

下面我们演示一下安装main包,main.go 是一个可执行文件,里面写了一个main 函数

go install awesomeProject/main

在bin 文件中发现了可执行文件main,

工作区介绍

image.png

可以双击进行打开

工作区介绍

image.png

如果我们把main.go 的文件中的main函数该一个名字例如 goPrint ,那么在执行安装包文件

你就会发现如下错误,

工作区介绍

image.png

所以安装的命令源码文件时,必须包含main函数

构建

构建就是生成目标可执行文件的过程,命令行工具,使用cd 命令进入到go文件所在的文件夹中执行下面的命令

go build  main.go

会在当前目录生成一个main的文件,这个文件就是可执行文件

工作区介绍

image.png

双击打开,执行

工作区介绍

image.png

go build 默认不会编译源码文件中依赖的那些包的,但是如果被依赖的那些包的归档文件不存在,即不在pkg包中,或者源码有个更改,那么它还是会被编译的

  • 如果强制编译依赖文件请使用下面的命令

go build -a main.go

  • 如果不仅要编译依赖的代码包,还要安装他们的归档文件,那么可以加入标记 -i

    go build -i main.go

  • 如果想知道编译的过程,请使用下面的命令

go build -x main.go
工作区介绍

image.png

  • 如果指向查看编译过程,而不真的执行编译
go build -n main.go
工作区介绍

image.png

  • 如果想要查看编译都执行了那些依赖包可以使用下面的命令
go build -v main.go
go build -v -a main.go // 依赖的文件全部执行编译
工作区介绍

image.png

go get 命令

会自动从一些主流公用代码仓库 如github 下载

-u 下载并安装代码包,不管代码中是否存在

-d 只下载代码包,不安装代码包

-fix 在下载代码包后选运行一个用于根据当前Go语言版本修正代码的工具,然后再安装代码包

-t 同时下载测试所需的代码把

-insecure 允许通过非安全的网络协议下载和安装的代码包。

代码远程导入的方式如下

package semaphore // import "golang.org/x/sync/semaphore"

解释如果此代码包存在github网站的golang组的sync代码仓库的sempahore 目录下,如果按照相面的写法声明,

则安装该包的命令可以如下

go get golang.org/x/sync/semaphore

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

机器与人:埃森哲论新人工智能

机器与人:埃森哲论新人工智能

【美】保罗•多尔蒂 詹姆斯•威尔逊 / 赵亚男 / 中信出版社 / 2018-10-1 / 49.00元

自人工智能问世以来,人们普遍持有人机对立的观点,且无时无刻不在害怕自己的工作会被人工智能取代。作者认为,是时候抛开这些无谓的担忧了,因为人类社会正走向一个与机器共融共生的时代。 未来的新型工作模式是什么?未来有哪些工作不会被人工智能取代?人工智能时代重要的生存技能是什么?本书围绕这三大核心问题做了透彻的分析。作者带我们见识了置于业务流程背景之下的人工智能,阐述了其在不同职能部门中起到的推动作......一起来看看 《机器与人:埃森哲论新人工智能》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

SHA 加密
SHA 加密

SHA 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具