GO语言安装

第一步,下载安装包go1.19.linux-amd64.tar.gz。

可以登录网址:Downloads - The Go Programming Language下载,也可以登录网址:Go下载 - Go语言中文网 - Golang中文社区下载。当然,还可以手动wget下载安装。

命令:wget https://golang.google.cn/dl/go1.19.linux-amd64.tar.gz

第二步,解压安装包go1.19.linux-amd64.tar.gz

命令:cd /usr/local/src

tar -xzf go1.19.linux-amd64.tar.gz

第三步,配置环境。

在环境变量配置文件/etc/profile中添加以下内容:

# GO PATHexport PATH=$PATH:/usr/local/src/go/bin

# 使profile配置立即生效

命令:source /etc/profile

# 查看Go版本

命令:go version

若结果显示“go1.19 linux/amd64”,则说明go安装成功。

# 查看go环境变量

命令:go env

设置Go Modules和代理

Go Modules是Go语言依赖管理解决方案。

Go.mod是Golang1.11版本新引入的官方包管理工具用于解决之前没有地方记录依赖包具体版本的问题,方便依赖包的管理。

Go.mod其实就是一个Modules,Modules是相关Go包的集合,是源代码交换和版本控制的单元。

一个源代码目录甚至是空目录都可以作为Modules,只要其中包含有go.mod文件。

第一步,mod文件字段内容

go.mod是启用了Go moduels的项目所必需的最重要的文件,它描述了当前项目(当前模块)的元信息,每一行都以一个动词开头。目前有以下5个动词:

module:用于定义当前项目的模块路径。go:用于设置预期的Go版本。require:用于设置一个特定的模块版本。exclude:用于从使用中排除一个特定的模块版本。replace:用于将一个模块版本替换为另外一个模块版本。

第二步,生成go.mod

# 打开Go modules

命令:go env -w GO111MODULE=on

# 设置GOPROXY

命令:go env -w GOPROXY=https://goproxy.cn,direct

# 在文件夹/usr/local/src/go中新建文件夹utl,并在文件夹utl下新建hello.go。hello.go的内容如下:

package mainimport ( "fmt" )func main() {fmt.Println("Hello, world!")}

# 在项目的根目录下生成go.mod文件

命令:cd /usr/local/src/go/utl

go mod init hello(模块名称)

第三步,Go modules常用命令

# 了解Go modules启用和未启用两种状态下的go get的行为

命令:go help module-get

go help gopath-get

用go get拉取新的依赖

# 拉取最新的版本(优先择取tag)

命令:go get golang.org/x/text@latest

# 拉取master分支的最新commit

命令:go get golang.org/x/text@master

# 拉取tag为v0.3.2的commit

命令:go get golang.org/x/text@v0.3.2

# 拉取hash为342b231的commit,最终会被转换为v0.3.2

命令:go get golang.org/x/text@342b2e

# 更新现有的依赖

命令:go get -u

# 下载go.mod文件中指明的所有依赖

命令:go mod download

# 整理现有的依赖

命令:go mod tidy

# 查看现有的依赖结构

命令:go mod graph

# 生成go.mod文件(唯一可以生成go.mod文件的子命令)

命令:go mod init

# 编辑go.mod文件

命令:go mod edit

# 导出现有的所有依赖

命令:go mod vendor

# 校验一个模块是否被篡改过

命令:go mod verify

在Linux中进行GO语言安装相关推荐

  1. linux收缩java位置,找到linux中当前java的安装位置

    先看java -version $java version "1.8.0_111" Java(TM) SE Runtime Environment (build 1.8.0_111 ...

  2. Linux中的无人职守安装脚本kickstart

    Linux中的无人职守安装脚本kickstart 1 kickstart自动安装脚本的作用 2 实验环境 3 kickstart自动安装脚本的制作 3.1 通过模板生成kickstart文件 3.2用 ...

  3. Linux 中RPM包的安装

    Linux 中RPM包的安装 在linux的使用过程中,会用到各种各样的服务,所以就会安装许多软件包. 所以就总结了下边的两种安装方式: 1. 二进制安装 软件包的安装及相关命令: rpm -ivh ...

  4. Linux中man手册的安装以及使用详解

    Linux中man手册的安装以及使用详解 linux中man手册的安装以及使用详解 man手册是什么 man手册是干嘛的 man手册如何安装 man手册如何使用 举例讲解 我们来看一下man手册的目录 ...

  5. arch linux中的jdk的安装

    arch linux中的jdk的安装 编辑/etc/pacman.conf, 在文件末尾添加以下内容(操作前请做好相应备份) [archlinuxcn] SigLevel = Optional Tru ...

  6. linux setlocale函数,linux中的多语言环境(LC_ALL, LANG, locale)

    为了在Linux下实现多语言支持,必须在定制安装程序时,引入与glibc和图形环境两者对应的多语言环境支持.对于glibc环境而言,它是整个Linux中文化的基础,我们需要在/usr/share/lo ...

  7. Golang入门:Linux上的go语言安装与配置

    Tips:本文以本文撰写时的 Go 语言最新版本,也就是 go.1.19.2 版本为例. Linux 发行版本使用 Ubuntu 22.04.1 LTS 为例来做演示. 安装 C 工具 Go 的工具链 ...

  8. linux 全新编译安装,全新linux中通过编译方式安装nginx

    先去官网下载linux.tar.gz包 http://nginx.org/en/download.html 传到linxu中 解压tar包 在软件包nginx-1.15.9目录下对NGINX进行配置 ...

  9. linux vnc的小黑点和鼠标不同步_vnc安装步骤,vnc在Linux中的7个安装步骤

    首先要知道的是,VNC是什么.VNC(Virtual Network Computing ),一种使用RFB协议的显示屏画面分享及远程操作软件.它与操作系统无关, 我个人使用的[IIS7服务器管理工具 ...

  10. OpenSSL的在windows和Linux中的编译和安装

    二.Linux中的安装 { 我用的是win10 bash环境, 1.环境配置 { #apt-get install perl #apt-get install make #apt-get instal ...

最新文章

  1. 同时拿到BATJMD的Offer是怎样的一种体验?
  2. JavaScript中 for、for in、for of、forEach等使用总结
  3. Linux 基金会透露未来 Linux 内核可能会引入形式验证
  4. Bat命令:从Ftp获取文件以及数据导入
  5. python opencv 识别角度_OpenCV入门之获取图像的旋转角度
  6. 自从装了windows神器,再也不用羡慕mac了
  7. JS-面向对象-创建具有私有属性的构造函数(2种方法)
  8. android 没有gen文件,关于eclipse:对于Android项目,Gen文件夹为空
  9. 常用webservice网址
  10. 计算机没有本地网络,网络连接里没有本地连接
  11. 黑苹果AX201网卡驱动小白教程,小新pro13不换网卡也能上网!
  12. c++中MFC消息机制,UI线程和工作线程,模式对话框原理
  13. pandas时间序列——时间基础、时间增量、时间周期、日期偏移处理
  14. 深度揭秘安全领域的那些“大牛” 竟过半在360
  15. 计算机上机日志如何查找,如何查看金蝶KIS记账王上机日志
  16. 【Python爬虫】你还在纠结选择哪个爬虫库嘛,全都拿来吧你
  17. 刚体运动学公式_理论力学:运动学
  18. 十大思想实验(思维风暴)
  19. no moudle named sklearn-impute
  20. mcinabox运行库下载_mcinabox运行库 v1.0

热门文章

  1. ElasticSearch教程——数据一致性
  2. 【微信小程序】解决代码上传超过大小限制,小程序分包
  3. 三目表达式 ---if--else的简写
  4. 计算机如何分割硬盘,电脑硬盘怎么分区 电脑硬盘分区方法大全
  5. python 使用GDAL实现栅格tif转矢量shp
  6. 从零实现一个3D建模软件
  7. 运动世界校园显示服务器异常,运动世界校园为什么成绩异常 成绩异常相关
  8. Vue在Nginx的使用
  9. grep查找文件内容
  10. 中兴新支点操作系统——菜单小教程