使用VS code快速搭建一个Golang项目

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

文章目录

前言

VC code是一款巨好用的编辑器使用vs code开发项目需要进行一些配置。项目中需要用到很多的包无论是自己建的还是第三方的。由于go语言的生态环境没有java与python那样好没有一个好的的包管理工具这给想用vs code开发golang项目的同学带来了困扰本篇博客写了关于一个go语言初学者如何使用VScode搭建go语言项目的过程对初学者很友好可以快速的搭建起来一个go语言项目。如果不擅长配置的话可以使用goland,相对于goland来说VScode搭建项目显得困难了许多。接下来就带大家了解一下如何在没有集成开发环境下手刃一个go语言项目。

安装go语言环境

这个巨简单就不说了大家可以网上检索一下教程。

了解Go开发相关的环境变量

#GOROOTGOROOT就是Go的安装目录类似于java的JDK。不用往环境变量配置。包管理方式变成Go Module之后就用处不大了。
GOROOT = D:\Go (你安装go环境的目录)   
#GOPATHGOPATH是我们的工作空间保存go项目代码和第三方依赖包。安装后在环境变量中有。
GOPATH = %USERPROFILE%\go
#配置代理加速因为go语言用到的包大多数都在github
GOPROXY=https://goproxy.cn,direct

熟悉Go Module

  • (1)使用 go module 管理依赖后会在项目根目录下生成两个文件 go.mod 和 go.sum。go.mod 中会记录当前项目的所依赖的包的信息。

  • (2)在需要使用时才开启GO111MODULE = on平时GO111MODULE = off避免在已有项目中意外引入 go module。

  • (3)go module 的目的是依赖管理所以使用 go module 时你可以舍弃 go get 命令(但是不是禁止使用, 如果要指定包的版本或更新包可使用go get平时没有必要使用)

要使用go module 首先要设置GO111MODULE=onGO111MODULE 有三个值off、on、auto。
auto 会根据当前目录下是否有 go.mod 文件来判断是否使用 modules 功能。
平时 GO111MODULE = off在需要使用的时候再开启避免在已有项目中意外引入 go module。
命令
set GO111MODULE=on
go env // 查看 GO111MODULE 选项为 on 代表修改成功
#初始化。先进入test项目下然后执行此命令项目根目录会出现一个 go.mod 文件
go mod init test 
#检测依赖。tidy会检测该文件夹目录下所有引入的依赖写入 go.mod 文件写入后你会发现 go.mod 文件有所变动
go mod tidy 
#下载依赖。我们需要将依赖下载至本地而不是使用 go get
go mod download 
#导入依赖。此命令会将刚才下载至 GOPATH 下的依赖转移至该项目根目录下的 vendor(自动新建) 文件夹下, 此时我们就可以使用这些依赖了
go mod vendor 
#依赖更新这里的更新不是指版本的更新而是指引入新依赖依赖更新请从检测依赖部分一直执行即可
go mod tidy
go mod download
go mod vendor

注go mod vendor创建的文件夹里面可以放用户自己的定制的包放入后直接用包名就可以导入项目不需要相对路径

创建一个go项目

  1. 新建文件夹demo作为项目根目录
  2. cmd执行命令go mod init demo 此时会生成一个go.mod文件(存放项目依赖)
  3. vscode打开文件选择项目根目录demo
  4. 新建main.go文件在根目录下创建main.go文件
  5. 执行
    1. go mod tidy // 添加或者删除 modules取决于依赖的引用 执行完生成go.sum文件
      注意是添加删除用不好vendor内的自定义包就没有了
    2. go mod vendor // 复制依赖到 vendor 目录下

如图

请添加图片描述
请添加图片描述
此时就可以放肆地开发了自己定义的包要放在vendor目录下。不要随便使用go mod tidy命令因为这个命令是检测当前目录的依赖也就是main.go所在的目录如果是你自己写了项目并且有很多自定义包他很可能会给你移除掉。

项目迁移

项目中可能引用了大量的github第三方库使用go mod tidy可以直接将所有的第三方库下载下来前提是网络通畅
本篇文章上面教过大家Go语言配置加速代理了最好配置一下。

  • 将别人的项目解压出来
  • 在main.go同级目录下进入cmd命令行
  • 执行 go mod tidy
  • 执行 go mod download
  • 执行 go mod vendor
  • 将自定义包导入vendor目录下
  • 项目配置完成

可以看一下下面的项目目录结构

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


在这里插入图片描述

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: go