首页 > 其他分享 >go 环境搭建

go 环境搭建

时间:2023-01-28 17:55:50浏览次数:59  
标签:GOPATH -- 环境 https go main 目录 搭建

SDK下载

下载地址:

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

https://studygolang.com/dl

这两个个那个下载快 用那个 都是镜像 ,官网被墙了(你懂得)官网地址

https://golang.org/dl/

然后下载对应平台的安装包,例如我这里就是 win平台

image-20230128103218604

安装

下载完成后,双击安装包,一路下一步即可,这里使用的是1.19.5版本

image-20230128103949735

image-20230128104034954

image-20230128104056945

设置安装位置

image-20230128104211672

image-20230128104238224

image-20230128104253747

测试是否安装成功

打开cmd,执行go env 或者 go version

像这样表示安装成功

image-20230128104533632

环境变量的配置

PATH变量

这个配置,跟配置Java环境时一样,是为了能够全局找到go 的命令

其实 我们这里 上面不应该 能直接正常识别 go 的命令的 ,应该是找不到命令,为啥这里能找到呢 ,应该是go 安装的时候 已经给你设置了,找一下看看

设置环境变量

这是 GOPATH 给你设置了一个,但这个明显不是我们的安装路径,那就是path里面,果然如此,这里安装的时候已经帮我们设置了,如果没有设置则需要自己设置

image-20230128105610040

GOPATH含义

参考:https://blog.csdn.net/weixin_42322206/article/details/128341595

GOPATH 是 Go 语言中使用的一个环境变量,它使用绝对路径提供项目的工作目录(也称为工作区), 是存放 Golang 项目代码的文件路径, GOPATH 适合处理大量 Go语言源码、多个包组合而成的复杂工程。

工作目录是一个工程开发的相对参考目录,好比当你要在公司编写一套服务器代码,你的工位所包含的桌面、计算机及椅子就是你的工作区。

工作区的概念与工作目录的概念也是类似的。如果不使用工作目录的概念,在多人开发时,每个人有一套自己的目录结构,读取配置文件的位置不统一

img

GOPATH目录一般为:

1、bin 存放编译生成的二进制文件。比如 执行命令 go get github.com/google/gops,bin目录会生成 gops 的二进制文件。

2、pkg 其中pkg下面以下三个文件夹。

 XX_amd64: 其中 XX 是目标操作系统,比如 mac 系统对应的是darwin_amd64, linux 系统对应的是 linux_amd64,存放的是.a结尾的文件。
 mod: 当开启go Modules 模式下,go get命令缓存下依赖包存放的位置
 sumdb: go get命令缓存下载的checksum数据存放的位
3、src 存放golang项目代码的位置

image-20220409140546638

设置GOPATH

安装完成后,go 给你设置的默认的,我们这里改成自己的,找到 GOPATH 环境变量,这里我们把 用户变量和系统变量都设置下

image-20230128114229794

设置代理GOPROXY 和 GO111MODULE

众所周知的原因,国内被墙,所以需要设置镜像源,跟npm 设置国内镜像一样的道理,对应的设置

  • GOPROXY -> 代理地址
  • GO111MODULE -> 是否开启

这里提供两个代理:

https://goproxy.cn/

https://golang.com.cn/proxy

设置代理相关的环境变量

为了代理长期生效。添加环境变量:

GO111MODULE:on

GOPROXY:https://goproxy.cn

image-20230128143322498

go env 命令

使用 go env 命令可以查看我们刚才的设置,例:

image-20230128143649279

工作空间目录结构

goWorkSpace     // goWorkSpace为GOPATH目录
  -- bin
     -- myApp1  // 编译生成
     -- myApp2  // 编译生成
     -- myApp3  // 编译生成
  -- pkg
  -- src
     -- common 1
     -- common 2
     -- common utils ...
     -- myApp1     // project1
        -- models
        -- controllers
        -- others
        -- main.go 
     -- myApp2     // project2
        -- models
        -- controllers
        -- others
        -- main.go 
     -- myApp3     // project3
        -- models
        -- controllers
        -- others
        -- main.go 

既然已经有了规范,那我们按照规范来

现在 在我们再工作目录,也就是GOPATH 目录新建

src:存放源代码的目录

pkg:编译过后生成的包文件存放目录

bin:编译后生产的可执行文件和go相关的工具,都在此目录

image-20230128150402452

  

配置vscode 安装 go 插件

安装 go 插件

启动vscode选择插件->搜go选择Go for Visual Studio Code插件点击安装即可。如图

image-20230128144412072

配置golang辅助工具

使用快捷键:Ctrl+Shift+P 输入Go:Install/Update Tools,选择全都要,但是注意,如果没有配置代理,会安装失败

image-20230128144831296

image-20230128145109261

这时候你如果在看其他人的文档,有时候会发现别人的插件巨多,而你只有七个不是因为你小,而是因为精悍

因为
go语言服务器 "gopls" 可以取代好几个插件

vsode没有代码自动补全

如果没有代码提示,参考这个方法解决

https://blog.csdn.net/qq_36564503/article/details/124527414

hello world

学习语言的第一个程序肯定是hello word了,在工作目录的 src新建 hello 文件夹并在hello目录中创建一个main.go文件,文件内容如下

image-20230128151803874

package main // 声明 main 包,表明当前是一个可执行程序

func main() { // main函数,是程序执行的入口
	println("Hello World!") // 在终端打印 Hello World!
}

在hello目录下执行:

go run main.go

image-20230128151933815

标签:GOPATH,--,环境,https,go,main,目录,搭建
From: https://www.cnblogs.com/makalochen/p/17070999.html

相关文章

  • Go 实现Rabbitmq 简单模式
       rabbitmq.go文件代码如下packageRabbitMQimport("fmt""github.com/streadway/amqp""log")constMQURL="amqp://lyc:[email protected]:56......
  • Go mod 各类问题及解决办法
    [going@VM-24-3-centosserver]$gorunmain.gomain.go:9:2:norequiredmoduleprovidespackagegithub.com/grpc-demo/helloworld;toaddit:gogetgith......
  • 【godis】skiplist
    skiplist前言:在看代码时看到ZSKIPLIST_MAXLEVEL=32,当时并不了解ZSKIPLIST_P的作用,想着用2分法不应该层数是64吗?书上和他人的代码都是基于5.0的(5.0上是64),于......
  • 12--go mod和go vendor的区别 | 青训营笔记
    这是我参与「第五届青训营」伴学笔记创作活动的第12天背景在家安装的环境可能路径和环境变量配的有些问题,导致项目import的包全部标红,gomodtidy显示导入包不在路径,......
  • process-exporter到prometheus到grafana,监控linux进程,监控搭建
    搭建架构:Linux被监控机:process-exporterLinux监控机:prometheus&grafanamacos图形化展示监控结果:远程访问 prometheus&grafana 一、Linux被监控机的配置下载pro......
  • java 环境配置(二) 安装IDEA
    1.安装地址:IntelliJIDEA–theLeadingJavaandKotlinIDE(jetbrains.com)   下载  下载完成双击安装即可  继续->  退出 ......
  • jupyter notebook配置虚拟环境
    查看anaconda3安装了哪些虚拟环境condaenvlist或condainfo-e确认当前存在什么虚拟环境。 [rin]#condaenvlist#condaenvironments:#          ......
  • Mongodb多租户功能实现
    importcom.mongodb.client.MongoClient;importcom.mongodb.client.MongoDatabase;importlombok.extern.slf4j.Slf4j;importorg.springframework.data.mongodb.core......
  • 设计小白怎样设计logo?-优漫动游
    你是否有的时候想设计一个logo,却无从下手,设计小白怎样设计logo?很多同学觉得做卡通的LOGO很难,没有基础的学员根本不知道从何做起,如今的logo不简简单单是个标志了,他更是一个......
  • 上古神兵,先天至宝,Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最
    毫无疑问,我们生活在编辑器的最好年代,Vim是仅在Vi之下的神级编辑器,而脱胎于Vim的NeoVim则是这个时代最好的编辑器,没有之一。异步支持、更好的内存管理、更快的渲染速度、更......