Was ist Air und warum wird es benötigt?
Air ist ein leistungsstarkes Tool für Go-Entwickler, das Live Reload (automatische Neuladung) von Anwendungen ermöglicht. Wenn Sie jemals Webanwendungen in Go geschrieben haben, wissen Sie, wie mühsam es ist, den Server jedes Mal manuell zu stoppen (Strg+C), das Projekt neu zu kompilieren (go build) und wieder zu starten. Air automatisiert diesen Prozess: Es überwacht Änderungen im Quellcode Ihres Projekts und baut die Anwendung bei jedem Speichern einer Datei automatisch neu auf und startet sie neu.
Air wurde vom Cosmos-Team (ehemals Tendermint) entwickelt und ist selbst in Go geschrieben. Es ist keine Bibliothek im klassischen Sinne (Sie importieren es nicht in Ihren Code), sondern ein Kommandozeilen-Tool, das parallel zu Ihrer Anwendung läuft.
Warum Air verwenden?
- Schnellere Entwicklung: Spart Minuten, die sonst für manuelle Neukompilierung verloren gehen.
- Komfort: Einfach die Datei speichern – der Server startet automatisch neu.
- Unterstützt alle Go-Projekte: Funktioniert mit Webservern, CLI-Tools, Telegram-Bots und jeder anderen Anwendung.
- Flexible Konfiguration: Sie können Ordner ignorieren, Verzögerungen einstellen, zusätzliche Befehle ausführen und vieles mehr.
Air ist besonders nützlich bei der Entwicklung von Webanwendungen mit Frameworks wie Gin, Echo, Fiber oder dem Standard-net/http, bei denen jede Änderung einen Serverneustart erfordert.
Air Installation
Air kann auf verschiedene Arten installiert werden. Wählen Sie die für Ihr System passende Methode.
Methode 1: Installation mit go install (empfohlen)
Der einfachste Weg ist die Verwendung des standardmäßigen Go-Paketmanagers. Stellen Sie sicher, dass Go Version 1.16 oder höher installiert ist.
go install github.com/air-verse/air@latest
Danach wird die Binärdatei air im Verzeichnis $GOPATH/bin (normalerweise ~/go/bin) abgelegt. Stellen Sie sicher, dass dieses Verzeichnis in der Umgebungsvariable PATH enthalten ist.
Methode 2: Installation mit Homebrew (macOS / Linux)
Wenn Sie macOS oder Linux mit Homebrew verwenden, ist die Installation trivial:
brew install air
Methode 3: Installation mit einem Skript (Linux / macOS / WSL)
Sie können das Installationsskript verwenden:
curl -sSfL https://raw.githubusercontent.com/air-verse/air/master/install.sh | sh -s
Methode 4: Installation mit Docker
Für Docker-Fans:
docker run -it --rm -v "$PWD":/app -w /app cosmtrek/air
Installation überprüfen
Überprüfen Sie nach der Installation, ob Air funktioniert:
air -v
Sie sollten die Version des Tools sehen, z.B.: v1.52.3
Schnellstart mit Codebeispiel
Lassen Sie uns eine einfache Go-Webanwendung erstellen und Live Reload mit Air einrichten.
Schritt 1: Neues Projekt erstellen
mkdir my-air-app
cd my-air-app
go mod init my-air-app
Schritt 2: Einfachen HTTP-Server schreiben
Erstellen Sie die Datei main.go:
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hallo, Air! Aktuelle Uhrzeit: %s", time.Now().Format("15:04:05"))
})
fmt.Println("Server gestartet auf http://localhost:8080")
http.ListenAndServe(":8080", nil)
}
Schritt 3: Air-Konfiguration initialisieren
air init
Dieser Befehl erstellt die Datei .air.toml im Projektverzeichnis mit den Standardeinstellungen. Sie können sie später an Ihre Bedürfnisse anpassen.
Schritt 4: Air starten
air
Sie sehen eine Ausgabe ähnlich dieser:
__ _ ___
/ /\ | | | |_)
/_/--\ |_| |_ Auch in der Bibliothek
MassTransit für C# (.NET): Komplettguide mit Praxisbeispielen
Testen in TypeScript mit Jest
CLI-Frameworks für Rust: Überblick über die besten Tools zur Erstellung von Kommandozeilen-Dienstprogrammen
Arbeiten mit YAML in Go (Golang): Bibliotheken go-yaml und yaml.v3