✈️

Goのホットリロード環境、Air

2024/09/19に公開

Air とは

Go の開発用ツールです。
https://github.com/air-verse/air

Go に限らず、コードへの変更が即座にサーバーに反映され、再起動することなく変更が確認できると作業効率が上がっていい感じです。これを叶えるのが ホットリロード であり、Go でこれを実現するのが Air というツールになります。

前提

以下が導入された環境を前提としています。

  • Go 1.12.2

導入

今回はテスト用に go-test というプロジェクトを想定します。
実際のプロジェクトでは、それぞれのプロジェクト名に読み替えてください。

プロジェクト用のフォルダを作成し、移動します。

mkdir go-test
cd go-test

プロジェクトを作成する

まずは Go のプロジェクトとして初期化します。

go mod init go-test

テスト用に、main.go を作成しておきます。

package main

import "fmt"

func main() {
	fmt.Println(Hello())
}

func Hello() string {
	return "Hello, Test!"
}

通常は go run main.go でこのまま実行しますが、この状態ではホットリロードは行われません。

Air を導入する

それでは Air を導入していきます。
まずは go install でライブラリを追加します。

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

Air の設定ファイルを作成します。

air init

.air.toml が生成されたことを確認出来たら OK です。

起動する

ホットリロードを有効にするには、以下のコマンドで Air サーバーを起動しておく必要があります。

air

起動するとファイルの監視が開始され、ホットリロードが有効になります。

Progate Path コミュニティ

Discussion