GO 学习笔记之一 环境安装

一、背景

     任何运行 go 程序的服务器中必须存在 go 运行环境,本篇指导说明如何使用已有的官方安装包安装go运行环境 以及 如何从go源码中安装 go 运行环境。

二、安装

安装包网址:All releases - The Go Programming Language

可以看到:

  •  源码
  • linux环境下的安装包
  • windows环境下的安装包

1、安装包安装go运行环境

1.1 windows 环境安装 go 运行环境

1)从下载网站上下载 msi 格式的安装包,示例为:go1.23.3.windows-amd64.msi

2)双机 go1.23.3.windows-amd64.msi,一直点击 下一步

3)配置环境环境变量(win10为例)

  • 运行-搜索“环境”-“编辑账户的环境变量”,点击“打开”

  • “环境变量”弹框中 在用户变量中 如果已经存在 “GOROOT”变量,则双击它,修改值,值为GO安装路径。然后点击“PATH” 将 go 安装路径/bin 添加进去,如下图:

  •    环境变量中 还需要 添加 GOPATH,该值为go 所有工程所在总目录

如果不将 GOPATH 和 GOROOT值设置不同的,则后续执行命令会一直报警告

  • 验证GO是否安装好。 搜索运行,点击打开

  • 输入 go version

  • 输入 go env 可以看到 go 自己的变量信息

  • 修改 go 变量
    • 开启模块管理

    • 设置 go仓库

       这个值可以设置成  https://goproxy.cn,direct   国内代理地址

1.2 linux 环境安装 go 运行环境

1.2.1 下载安装包

 下载 go 1.24.2.linux-arm64.tar.gz 版本

1.2.2 安装

  • 将压缩包上传到服务器上,本文章放在 /opt/go 下
  • tar -zxvf 命令进行解压缩,解压之后 bin 在 /opt/go/go 目录下

  • 设置环境变量
    • echo $PATH  检查当前环境变量的内容
    • vi /etc/profile  编辑环境变量文件,在末尾增加 export PATH=/opt/go/go/bin
    • source /etc/profile 环境变量永久生效
    • echo $PATH  再次进行查看,发现已经存在的环境变量了

    • go version 验证 go 环境是否安装成功

  • 设置 go env 环境变量
    • go env  查看 go 的所有环境变量,可以看到  GO111MODULE\GO PATH

    • go env -w GO111MODULE='on' GOPATH='/opt/go/ws'    修改多个环境变量
    • go  env 可以查看修改后的环境变量

2、源码安装go运行环境

 

三、go env 环境变量说明

  • GOROOT:这是 Go 语言的安装目录,包含了 Go 的标准库、工具链等核心组件。默认情况下,当你安装 Go 语言时,GOROOT 会被设置为 Go 的安装路径。
  • GOPATH:这是 Go 语言的工作区目录,用于存放你的 Go 项目、依赖包等。在 Go 1.11 及之前的版本中,GOPATH 是必须的,用于解析导入路径。从 Go 1.13 开始,Go 引入了模块支持,允许你在项目级别管理依赖,但仍然兼容 GOPATH 模式。
  • GO111MODULE:
  • GOPROXY:

注意:

1)GOROOT与GOPATH不能设置成一样的

  • 将 GOPATH 设置为 GOROOT(如 d:\program files\go)会导致 Go 语言的工具链(如 go buildgo run 等)在错误的位置查找你的项目和依赖。这通常会导致编译错误或无法找到依赖包的问题。
  • GOROOT 是 Go 语言的安装目录,它包含了 Go 的标准库和编译器等工具,而不是你的工作项目或第三方依赖。

四、安装GO开发工具

1、安装 VSCODE 工具

1.1 下载

下载网址 Visual Studio Code - Code Editing. Redefined

   点击“Download for Windows”,即可进行下载,成果物为:VSCodeUserSetup-x64-1.95.3.exe

1.2 安装

  双机 VSCodeUserSetup-x64-1.95.3.exe,一直点击 下一步,开始安装

1.3 安装GO插件

1) 打开 VSCODE 工具

2)点击 “extensions” 图标,搜索“GO”插件,点击 install,安装 GO 插件

1.4 手动创建第一个go工程(hello world工程)

1)创建 go 工程目录,如:E:\gowork\src\hello  ,其中 hello 是 工程名,E:\gowork\src\ 是存放所有 go 工程的总目录

2)从 VSCODE 工具中打开 创建的 hello 文件夹

  •   点击 工具左侧 第一个图标  ----   点击 Open Floder

  •  选择 这个 Hello 工程,然后 右下角 “TERMINAL” 中输入 go mod init hello  (图中命令有误)

3) 在 hello工程下创建 hello.go 文件  并 编辑其内容,仅输出 “hello world”

4) 运行 hello.go

  •  在 terminal 中输入  go run .\hello.go 运行

1.5 集成 git 导入项目

1)安装 git

   首先需要确保你的计算机上已经安装了Git。可以从Git官网(https://git-scm.com/)下载并安装Git  并配置好 git 账号

2)安装 git 插件

     需要安装 Git Graph、Git History、Git supercharged 插件

3)通过vscode 打开 git bash 命令行工具

输入git 命令之后,如果要退出这个命令的执行,可以使用 q

或者可以通过 查看-终端打开终端界面,然后按照上图所示打开 git bash 工具

4) 导入git项目

    导入项目可以有不同的方式,具体如下介绍

a)  gitlab 上直接打开 工程,点击 Visual Studio Code

   可以看到默认是通过 https 方式克隆到本地的

b)git bash 终端 克隆远程库代码

git clone 远程仓库地址   本地路径  -b  分支名称 --progress

  • 如果目录不配置,表示将会把url指向的仓库直接克隆到当前所在目录下
  • -b 分支名不配置的情况下,将会把主干分支的代码克隆到当前所在目录下

示例:

git clone https://sys-gitlab.xxx.com.cn/Fsdmdept/USTA/USTA-xx.git e://gowork//src//git//USTA-xxx --progress     #将 https://sys-gitlab.xxx.com.cn/Fsdmdept/USTA/USTA-xxx.git 仓库代码克隆到本地 e://gowork//src//git//USTA-apm 路径下     ----  这个是使用 https 方式

git clone git@sys-gitlab.xxx.com.cn:Fsdmdept/USTA/USTA-xxx.git e://gowork/src/git/USTA-xxx -b feature-golang-template-0.1 --progress   ----  这个是使用 git 方式

本文在实操时发现 https 的url 方式克隆会遇到问题,需要添加 ssl certificate.

使用git 法昂是 克隆结果如下

 

过程中碰到如下问题

  • 提示缺失“SSL certificate problem”

 5)VSCode 将克隆到本地的工程对应文件夹导入到工作区

 

1.6 集成SVN 导入项目

1)安装SVN插件

 

2)

1.7 常见插件安装

(1)Chinese (Simplified) (简体中文) Langua:将 VSCode 的用户界面翻译成简体中文;

(2)C/C++:提供 C 和 C++ 语言的集成开发环境,包括代码补全、语法高亮、智能感知、调试等功能,以便于开发者更高效地进行 C/C++ 编程;

(3)Back & Forth:代码上一步、下一步、跳转等功能插件;

(4)Git Graph:提供一个图形化的界面来展示 Git 仓库的分支结构和提交历史,方便开发者直观地理解项目历史和分支关系;

(5)Git History:允许用户通过右键菜单查看文件的 Git 提交历史,可以查看文件在不同提交中的变更;

(6)Git supercharged:增强 Git 在 VSCode 中的功能,提供更丰富的 Git 操作,如分支管理、历史比对、提交信息编辑等;

(7)koroFileHeader:自动为文件添加头部注释,支持自定义注释模板。在文件头部添加作者、创建时间、文件描述等信息,有助于代码维护;

(8)Embedded IDE:提供嵌入式系统开发的集成环境,可能包括针对特定嵌入式系统的编译器、调试器和其他工具的支持;

(9)Cody: AI Coding Assistant with Autocomplete & Chat:利用 AI 技术提供代码自动补全、聊天机器人辅助编程、自动生成代码注释等功能,以提高编程效率和代码质量;

(10)Keil Assistant:增强VSCODE在嵌入式开发方面的功能,使得开发者能在VSCODE中更方便地使用Keil uVision IDE进行嵌入式项目开发,实现代码编写、调试、项目管理等功能的集成和优化;

2、多种方式运行 GO 主程序

2.1 通过命令行运行

   可以象上个章节一样,在 terminal 终端执行 go run 命令运行,但这个可能不是我们想要的,希望可以直接通过 开发工具运行

2.2 运行 Run --> Run without Debuging

 过程中碰到如下问题:

1)下载mod cobra时,其依赖的 go-md2man 下载不下来,提示 sum 不匹配

 原因:

   这是因为 GOPROXY环境变量配置成了私有的仓库,该仓库中虽然有 这个 go 模块,但是其sum 与 cobra 模块中 go.sum 记录的 go-md2man sum不一致。因此仍然需要 给 GOPROXY 配置一个 go 全球代理 才行,这样,这个模块可以从全球代理下载而不是公司仓库下载了。

解决方法:

  •  执行 go en -w GOPROXY=https://goproxy.cn,direct  (先设置成全球代理)
  •  go get github.com/cpuguy83/go-md2man@v1.0.1  下载这个依赖模块
  • 再次执行 run without debugging ,点击右小角的 install

2) 报错“Failed to launch: Version of Delve is too old for this version of Go”

  此时 工具 会自动打开 launch.json 文件 。同时可以看到左侧工程目录下多了 .vscode 目录以及 launch.json 文件。

原因:dlv 版本过低造成

解决办法:  (从全球GO代理中下载最新的 dlv版本)

  • go env -w GOPROXY=https://goproxy.cn,direct
  • go get -u github.com/go-delve/delve/cmd/dlv@latest

这里显示最新的版本是 1.23.1版本,然后重启 vscode 工具,再点击 run 

这里显示成功运行了 hello.go

 

这里也显示 dlv 版本已经是最新的 1.23.1版本了。

3)报错提示“You don't have an extension for debugging 'Json with Comments'”,,点击第一个按钮进行安装。

解决办法:点击2)问题中自动打开的lanuch.json 文件,点击“Add Configuration”,选择 launch package

 

 

 

附录

1、全球 GO 代理仓库:GOPROXY.IO - 一个全球代理 为 Go 模块而生

2、

 

 
posted @ 2025-04-18 11:40  夏之夜  阅读(195)  评论(0)    收藏  举报