Go入门: Air配置热重载

2024-09-02 10:28
文章标签 配置 go 入门 重载 air

本文主要是介绍Go入门: Air配置热重载,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Go入门: Air配置热重载

前言

本章节适合 Golang 初学者,通过简单的项目实践来加深对 Golang 的基本语法和 Web 开发的理解。
参考文档:Air GO 官方文档
欢迎前往博主博客 torna.top 免费查阅

Air 简介

Air 是为 Go 应用开发设计的另外一个热重载的命令行工具。只需在你的项目根目录下输入 air,然后把它放在一边,专注于你的代码即可。

Air 出现的根本原因:
使用 Gogin 框架开发网站时,由于 gin 缺乏实时重载功能,开发者不得不频繁使用 go run main.go 命令运行项目,每次修改代码都需要重新启动项目,导致开发效率低下。

注意:该工具与生产环境的热部署无关。

Air 特性:

  • 彩色的日志输出
  • 自定义构建或必要的命令
  • 支持外部子目录
  • 在 Air 启动之后,允许监听新创建的路径
  • 更棒的构建过程

安装


1. 使用 go install (推荐)

需要 go 1.22 或更高版本:

go install github.com/air-verse/air@latest

此方法最为便捷,但需要 go 环境变量 GOPATH 已设置。

每日小技巧: go get vs go install
特性go getgo install
用途- 下载和安装 Go 包和工具
- 更新现有包和工具
- 安装 Go 工具
- 编译并安装 Go
主要功能- 从远程代码仓库获取包
- 将包添加到模块的依赖列表
- 更新包至最新版本
- 编译并安装指定包
- 将编译后的二进制文件安装到 $GOPATH/bin 或模块所在目录
使用方式- go get [package]
- go get -u [package](更新包)
- go install [package]
包管理- 更新或下载指定包及其依赖
- 可用于获取第三方库和工具
- 针对当前模块或指定包进行安装
- 对包进行编译并安装到 $GOPATH/bin 或模块目录
安装位置- 安装到 $GOPATH/bin(Go 1.16 之前)
- 在模块模式下,安装到 $GOPATH/bin 或模块目录
- 安装到 $GOPATH/bin 或模块目录
模块支持- 支持 Go Modules(从 Go 1.11 起)
- 可以在模块模式下使用
- 支持 Go Modules(从 Go 1.16 起)
- 安装指定的包或工具
常用场景- 获取新工具
- 更新现有工具和包
- 安装工具到全局环境
- 编译当前项目并安装
示例- go get golang.org/x/tools/cmd/gopls
- go get -u github.com/gin-gonic/gin
- go install golang.org/x/tools/cmd/gopls@latest
- go install ./cmd/mytool

2. 使用 install.sh

# binary 文件安装在 $(go env GOPATH)/bin/air
curl -sSfL https://raw.githubusercontent.com/air-verse/air/master/install.sh | sh -s -- -b $(go env GOPATH

这篇关于Go入门: Air配置热重载的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1129705

相关文章

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

Java 方法重载Overload常见误区及注意事项

《Java方法重载Overload常见误区及注意事项》Java方法重载允许同一类中同名方法通过参数类型、数量、顺序差异实现功能扩展,提升代码灵活性,核心条件为参数列表不同,不涉及返回类型、访问修饰符... 目录Java 方法重载(Overload)详解一、方法重载的核心条件二、构成方法重载的具体情况三、不构

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S