✈️
Goのホットリロード環境、Air
Air とは
Go の開発用ツールです。
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
起動するとファイルの監視が開始され、ホットリロードが有効になります。
Discussion