go语言基本环境搭建

news2024/11/19 4:37:40

下载地址
Go官网下载地址:https://studygolang.com/dl

一、下载对应电脑得安装包

在这里插入图片描述

二、下载完成点击安装下一步(选择目录尽量简单)

在这里插入图片描述

三、是否安装成功

在这里插入图片描述

四、环境变量

GOROOT和GOPATH都是环境变量,其中GOROOT是我们安装go开发包的路径,而从Go 1.8版本开始,Go开发包在安装完成后会为GOPATH设置一个默认目录,并且在Go1.14及之后的版本中启用了Go Module模式之后,不一定非要将代码写到GOPATH目录下,所以也就不需要我们再自己配置GOPATH了,使用默认的即可。
在这里插入图片描述
在这里插入图片描述

五、新建文件夹

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、安装VS Code(官网下载下一步下一步)

为VS Code编辑器安装Go扩展插件,让它支持Go语言开发。
在这里插入图片描述

go mod init

使用go module模式新建项目时,我们需要通过go mod init 项目名命令对项目进行初始化,该命令会在项目根目录下生成go.mod文件。例如,我们使用helloworld作为我们第一个Go项目的名称,执行如下命令。
在这里插入图片描述

七、编写代码

接下来在该目录中创建一个main.go文件:
非常重要!!! 如果此时VS Code右下角弹出提示让你安装插件,务必点 install all 进行安装。
在这里插入图片描述

八、go build命令表示将源代码编译成可执行文件。

或者在其他目录执行以下命令:
go build helloworld
在这里插入图片描述

九、Go常用命令

go build :编译源码文件,go install 生成可执行文件,go clean:清除相关应用包,go run 运行代码

golang 的go build、go install 命令都是可生成可实行文件,了解它们的小区别以选择适合自己的。

go install和go build在没有参数时运行,都会在当前目录下编译,如果当前目录是软件主程序(package main)

go build会生成可实行文件放在当前目录中
go install则会把它放到 G O P A T H / b i n 中 。 g o i n s t a l l 还 会 把 导 入 的 依 赖 包 编 译 到 GOPATH/bin中。 go install还会把导入的依赖包编译到 GOPATH/bingoinstallGOPATH/pkg,并缓存,如果包未做更改,下次编译则直接使用缓存。go build命令加参数-i也能达到go install的效果。

如果当前目录是非主包,则go install直接把编译结果安装到$GOPATH/pkg。如果项目很大,每次编译都要花很长时间,则建议使用go install来编译,充分利用它对依赖包的缓存功能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/11239.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【计算机毕业设计】Springboot医疗管理系统源码

一、系统截图(需要演示视频可以私聊) 摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 医疗服务系统,主要的模块包括查看管理员;首页、个人中心…

tomcat官网下载配置全部详细步骤(包含各种报错解决办法)

前言: 名字由来:翻译是野猫,tomcat的作者初衷是希望这个软件可以自力更生,自给自足。不依赖其他插件,独立达到提供web服务的效果 1.tocat和java的关系? tomcat是用Java语言编写的,需要运行在…

大三,请问现在自学Java还来得及吗?

前言 如果还在为入门Java晚而发愁时间够不够,首先你是准备自学,那么我们可以看看现在网络上一些比较热门的Java全体系的学习需要化多长时间,先拿B站上做的比较好的黑马教程和尚硅谷举例: 2022黑马程序员Java学习路线图​www.bili…

耗时半月,终于把牛客网软件测试面试八股文,整理成了文档资料.....

一、面试基础题 简述测试流程: 1、阅读相关技术文档(如产品PRD、UI设计、产品流程图等)。 2、参加需求评审会议。 3、根据最终确定的需求文档编写测试计划。 4、编写测试用例(等价类划分法、边界值分析法等)。 5、用例评审(…

飞象星球落地重庆云阳86所学校,县乡4万学生迎来素质课堂

猜生字笔画顺序、学习硬笔书法;跟随老师认识情绪、写下心里话……自从重庆云阳县86所中小学引入飞象星球双师素质课堂,4万多名县城和乡村孩子的课后素质课堂一下子变得丰富多彩起来。 图:洞鹿小学双河村校上双师素质书法课 云阳县地处三峡库…

代码随想录算法训练营第三十六天| LeetCode435. 无重叠区间、LeetCode763. 划分字母区间、LeetCode56. 合并区间

一、LeetCode435. 无重叠区间 1:题目描述(435. 无重叠区间) 给定一个区间的集合 intervals ,其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 2:解题思路 class …

MySQL面试问题汇总(2022)

一、MySQL架构 锁 什么是锁? 当多个连接并发地存取MySQL数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。 加锁是实现数据库并发控制的一个非常重要的…

BFV同态加密方案初步学习

BFV是把Bra12的LWE版本推到了RLWE版本,Bra12也可以叫做BFV。 经典的RLWE的公钥加密算法回顾 对比以前的Regev的LWE公钥加密方案,其实几乎只是把明文空间换了,也就是在最大比特编码的时候把2换成t,即,Δ⌊q/t⌋\Delta…

web网页设计期末课程大作业——香格里拉旅游网页设计 5页 HTML+CSS+JavaScript

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有…

一起来看看AMD最新显卡驱动22.11.1!

AMD最新推出了显卡驱动22.11.1,可以支持新上线的使命召唤:战区2,并且还修复了一系列的问题,AMD忠实用户们期待了嘛~ 更新内容 支持 使命召唤:战区 2.0 漫威蜘蛛侠:迈尔斯莫拉莱斯™ 固定问题 Radeon™ RX 6…

【mycat】mycat水平分表

mycat完成水平拆分 简介 相对于垂直拆分,水平拆分不是将表做分类,而是按照某个字段的某种规则来分散到多个库之中,每个表中包含一部分数据。简单来说,我们可以将数据的水平切分理解为是按照数据行的切分,就是将表中的…

【Try Hack Me】内网专项---Wreath

THM 学习笔记 【Try Hack Me】内网专项—Wreath 🔥系列专栏:Try Hack Me 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 📆首发时间:🌴2022年11月17日🌴 🍭作…

编程基础都要懂的计算机组成

学习目标: 1. 能够说出计算机有那两部分组成 2. 能够说出操作系统的作用 1.1计算机组成 计算机是可以进行数值计算和逻辑运算, 并且具有存储功能的电子机器. 计算机由硬系统件和软件系统组成. 1.1.1 硬件系统 主要分为主机和外设两部分, 是指那些构成计算机系统的物理实体,…

123456

hostname web1 bash 113.219.215.44 ctyun/Ctyun2022 cd /data/html/ tar -cvf /home/ctyun/html_zy.tar ./ mysqldump -uctyun -p --skip-lock-tables -R ultrax>ultrax_zhouyue.sql cd /etc/httpd tar -cvf /home/ctyun/httpd_zhouyue.tar ./ 关机改云主机私有网卡…

APP逆向案例之(一)过 app 更新提示

案例:某APP打开时提示更新 思路:想这是查壳看看有没有加壳,没有就去反编译按照提示搜索下,结果却是没有加壳反编译了下搜索,搜索不到,后来想到是不是网络传过来的,那这样是不是就要先获取本身AP…

Spring(十四)- Spring注解原理解析

文章目录一、Spring注解原理解析1. 使用xml配置扫描组件的原理解析2. 使用配置类扫描组件的原理解析一、Spring注解原理解析 1. 使用xml配置扫描组件的原理解析 使用Component等注解配置完毕后&#xff0c;要配置组件扫描才能使注解生效 ⚫ xml配置组件扫描&#xff1a; <c…

springboot RestTemplate优化 http 池化

http通信之三次握手 为了对每次发送的数据量进行跟踪与协商&#xff0c;确保数据段的发送和接收同步&#xff0c;根据所接收到的数据量而确认数据发送、接收完毕后何时撤消联系&#xff0c;并建立虚连接。 TCP在发送新的数据之前&#xff0c;以特定的顺序将数据包的序号&#…

【LeetCode 力扣】3.无重复字符的最长子串 Java实现 滑动窗口

题目链接&#xff1a;3.无重复字符的最长子串 1 原题描述&#xff1a; 2 解题思路 初看此题&#xff0c;其实并不难理解&#xff0c;我们一共有两个指针&#xff0c;一个时我们子串的头 start &#xff0c;一个是我们子串的尾 end。我们的尾 end 依次加一&#xff0c;然后判…

dpdk 多线程 gdb + master

1、 main线程没有调用pthread_join 一、初始化 1、rte_eal_cpu_init()函数中&#xff0c;通过读取/sys/devices/system/cpu/cpuX/下的相关信息&#xff0c;确定当前系统有哪些CPU核&#xff0c;已经每个核属于哪个CPU Socket。 2、eal_parse_args()函数&#xff0c;解析-c参数…

力扣:递增子序列java

力扣&#xff1a;递增子序列java 流程: 设置一个结果集和路径path 本题不设置used而是再当前层设置一个map 递归三部曲&#xff1a; 参数和返回值&#xff1a;参数为输入数组nums&#xff0c;开始下标startindex&#xff0c;返回值为空 对path>1时的path输入结果集//放到这…