一 Go环境搭建

news2025/1/26 15:39:07

1. 下载地址

https://golang.google.cn/dl/

傻瓜式安装,自动会配置path的变量,安装完成后可以使用go version 查看当前安装的版本

本文使用目前最新的1.20.2版本

在这里插入图片描述

2. 配置go环境

  1. cmd控制栏打开输入以下命令(如果cmd有问题可以尝试powershell)
  2. go env -w GO111MODULE=on
  3. go env -w GOPROXY=https://goproxy.io,direct

以上的目的是为了

  1. 开启GoMod包管理功能
  2. 更换下载的源地址,不然你面临无法下载包等困境

输入完成后执行go env查看当前的go配置的环境是否更改

3. Go常用命令

build :编译包和依赖
run:编译并运行Go程序
clean:移除对象文件
doc:显示包或者符号的文档
env:打印Go的环境信息
get:下载并安装包和依赖(需要先初始化项目使用go mod init 项目名称)
bug:启动错误报告
fmt:运行gofmt进行格式化
install:编译和安装包的依赖
list:列出包
test:运行测试
tool:查看工具

4. 关于IDE

选择一个趁手的IDE可以为代码编写提供便捷性,一般推荐VS Code 和 Goland

1. VS Code

使用VS Code,我们可以设置下中文插件,把相关的Go的扩展插件(Go tool)安装下

  1. 中文插件如下,安装好后右下角会提示是否现在更改语言,选择change即可(不安装即使用英文也可,此步骤不影响使用)
    在这里插入图片描述
  2. 我们初始化当前这个项目后(在当前项目的控制栏内,输入go mod init 此处填写项目名)
  3. 此时我们先手动搜索扩展,搜索框输入Go,先将其安装
    在这里插入图片描述
  4. 新建一个main.go的文件,VS Code就会在右下角提示我们需要install相关的插件,选择安装
  5. 下图这个位置会出现可安装的拓展包,截图中已全部安装完成了所以没显示,大概在这个CRLF的位置,可以选择全部安装
    在这里插入图片描述
  6. 此时你就可以享受到来自VS Code提供的一些便捷的代码提示

2. Goland

需要先下载一个版本(此处使用2021.2.2),需要破解下此软件(仅供学习使用,商用请进行购买)

  1. 下载地址:https://www.jetbrains.com/go/download/other.html 选择版本为2021.2.2

  2. 傻瓜式安装完成后,选择稍后再运行Goland
    在这里插入图片描述

  3. 在Goland文件的bin目录下找到下图文件,并填上相应的内容,内容文件在下方网盘地址给出

  4. 填写-javaagent:G:\Tools\FineAgent.jar 替换自己的FineAgent.jar的地址,保存
    在这里插入图片描述

  5. 打开Goland IDE ,输入激活码激活即可
    在这里插入图片描述

插件及激活码下载地址:
链接:https://pan.baidu.com/s/1SwOj0iK7062zqfanlOhIRA
提取码:bazq

5. 创建一个Go项目

  1. 创建一个项目文件夹(如:gotest)
  2. cmd进入到这个文件夹中,使用快捷打开模式 code .
  3. 初始化项目 go mod init gotest,此时会生成一个go.mod的文件用于记录此时的版本信息
  4. 开始编写内部的代码,先创建一个包(user),然后在包里面创建一个文件(user.go)
  5. 编写主执行程序文件main.go
    在这里插入图片描述
package user //注意在创建文件时需要声明此包的名称,一般来说与外面的文件名称保持一致即可

func Hello() string {
    return "hello"
}
//定义一个函数Hello,返回string字符串类型
package main

//这里我们导入需要的包,多个可以用括号括起来,需要写上字符串形式
import (
    "Mygo/user"
    "fmt"
)

func main() {
    s := user.Hello()  //此处可以用扩展插件.var来声明变量
    fmt.Printf("s: %v\n", s)  // 这里使用s.print!来快捷输出内容

}
  1. 运行main.go文件即可

在这里插入图片描述

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

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

相关文章

340秒语音芯片,轻松实现语音交互,畅享智能生活WTV380语音ic方案

随着智能家居、安防报警、宠物用品 等,智能设备的普及,语音交互技术正在逐渐成为人机交互的主要方式之一。而如何实现稳定高效的语音交互,就需要借助先进的语音芯片技术。今天,我们介绍的是一款高性能的语音芯片——WTV380&#x…

Gamma矫正

Gamma 曲线Gamma校正被使用在8位RGB图中。用来解决在有限的存储空间中保存尽可能多的人类感受敏感的色彩内容。Gamma 矫正Gamma校正的方式就是采样时,和输出到显示器给人类看时,对亮度进行的调整.如采样时 Gamma1/2.2 调亮Gamma,如显示时 Gamma2.2 调暗Gamma实际亮度…

【Redis】Redis慢查询

文章目录慢查询记录慢查询两个配置参数修改配置参数慢查询日志慢查询记录 我们都知道像mysql等持久化数据库会有慢查询日志,其实Redis中也有慢查询日志的功能。慢查询就是系统在执行命令的前后计算每条命令的执行时间,如果超过我们预设的时间&#xff0c…

登录接口-简约版(工作日记4)

前提条件: 1、jmeter接口测试工具 2、接口信息 获取验证码信息 登录接口信息 题外话: 接口返回的数据中如果有文字就会乱码 怎么解决 1、进入jmter文件–进入bin文件夹,找到jmeter.properties文件 2、右键打开,可以用文本模…

基于遗传算法的CVRP建模求解(Python)

带容量约束的车辆路径优化问题,CVRP,对一系列装卸货点进行适当的路径规划,在满足约束条件(客户需求、车辆载重和容积、车型、车辆行驶里程、配送中心数量等限制)和目标最优化(路程最短、成本最低、使用车辆…

点灯大师--点个正点原子阿尔法开发板的灯

点灯大师–点个正点原子阿尔法开发板的灯 文章目录点灯大师--点个正点原子阿尔法开发板的灯正点原子阿尔法开发板点灯1、使能 GPIO1 时钟2、设置 GPIO1_IO03 的复用功能3、配置 GPIO1_IO034、设置 GPIO5、控制 GPIO 的输出电平五种点灯的方法1.在一个驱动文件中实现寄存器初始化…

【C语言】编译+链接

一、程序的翻译环境和执行环境 在ANSI C的任何一种实现中,存在两个不同的环境。 第1种是翻译环境,在这个环境中源代码被转换为可执行的机器指令。 第2种是执行环境,它用于实际执行代码。详解编译链接翻译环境1.组成一个程序的每个源文件通过…

STM32电动车报警器

目录 项目需求 项目框图 硬件清单 振动传感器介绍及实战 振动传感器介绍 振动传感器编程实现 继电器介绍及实战 继电器工作原理 433M无线发射接收模块介绍及实战 433M无线发射接收模块介绍 ​编辑 433M编程实现 项目设计及实现 编程实现 项目需求 点击遥控器A 按键…

规约第二章

文章目录有限域的定义Definition of Finite Field单位元运算举例素数域群阿贝尔群阿贝尔循环群循环子群阿贝尔循环群且阶是素数的有限域的定义Definition of Finite Field 单位元 这里一般只需要记住2个0,1 。0是加法的单位元,1是乘法的单位元。以及逆…

【JavaScript UI库和框架】上海道宁与Webix为您提供用于跨平台Web应用程序开发的JS框架及UI小部件

Webix是Javascript库 一种软件产品 用于加速Web开发的 JavaScript UI库和框架 Webix用于跨平台Web应用程序开发的JS框架,为您提供102个UI小部件和功能丰富的CSS/HTML5 JavaScript控件 开发商介绍 Webix团队由由热衷于创建高质量网络产品的专业人士组成&#xff…

docker desktop安装K8S

文章目录一、配置镜像源二、使用步骤1.引入库2.安装k8s3.加载资源4.K8S官方dashboard总结摘抄这个,因为这个有些不全 导致走了一些弯路 一、配置镜像源 国外特别的慢 {"debug": true,"experimental": false,"insecure-registries":…

CSS的常用元素属性,显示模式,盒模型,弹性布局

目录 1.常用元素属性 1.1字体属性 设置字体 设置大小 字体粗细 文字样式 1.2文本属性 文字颜色 文字对齐 ​编辑文本装饰 文本缩进 ​编辑行高 ​编辑1.3背景属性 背景颜色 背景位置 背景尺寸 1.4圆角矩形 2.元素的显示模式 2.1块级元素(display:block) 2.…

Excel绘制数据对比表格-表格可视化

Word中生成的表格一般比较单调,若一组数据存在对比的情况时,读者/审稿人难以直接通过详细对比数据来分析,此时若可以将该组数据可视化来对比则为好,Excel则可实现该功能。 关于有些期刊需要提供表格中的数据便于复制等情况时&…

新闻发布网站分析及适用场景

在当今数字时代,发布新闻的渠道已经不再局限于传统媒体,越来越多的企业、组织和个人开始使用互联网平台发布新闻稿,以提升品牌知名度和影响力。本文将介绍一些可以发布新闻的网站,并分析其特点和适用场景。一、新闻稿发布平台1.新…

SpringCloud+SpringCloudAlibaba

架构的演进1.1单体架构将所有业务场景的表示层、业务逻辑层和数据访问层放在一个工程中,最终经过编译、打包,部署在一台服务器上。◆ 1.1.1单体架构的优点1)部署简单: 由于是完整的结构体,可以直接部署在一个服务器上即可。2&…

启动Idea报Failed to create JVM. JVM Path:

一、如果设置Idea自定义虚拟内存错误导致无法正常打开Idea 1.1、打开自定义Idea虚拟内存:Help - Edit Custom VM Options 1.2、如果idea64.exe.vmoptions设置非法字符,会导致打开idea报错 1.3、打开Idea提示如下 内容如下: ----------------…

信号、signal 函数、sigaction 函数

文章目录1.信号的基本概念2.利用 kill 命令发送信号3.信号处理的相关动作4.信号与 signal 函数4.1 signal 函数示例一4.2 signal 函数示例二5.利用 sigaction 函数进行信号处理6.利用信号处理技术消灭僵尸进程1.信号的基本概念 发送信号是进程之间常用的通信手段。信号用来通知…

算法刷题-只出现一次的数字、输出每天是应该学习还是休息还是锻炼、将有序数组转换为二叉搜索树

只出现一次的数字(位运算、数组) 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗&…

有java基础学习大数据该如何规划

大数据开发对于Java语言的依赖程度比较高,如果想尝试大数据开发,学习过Java语言就很容易上手 Java是目前使用广泛的编程语言之一,具有的众多特性,特别适合作为大数据应用的开发语言。 目前很多大数据开发团队都在使用Java语言&a…

MySQL——插入加锁/唯一索引插入死锁/批量插入效率

本篇主要介绍MySQL跟加锁相关的一些概念、MySQL执行插入Insert时的加锁过程、唯一索引下批量插入可能导致的死锁情况,以及分别从业务角度和MySQL配置角度介绍提升批量插入的效率的方法;MySQL跟加锁相关的一些概念在介绍MySQL执行插入的加锁过程之前&…