Перейти библиотеку ежедневного воздуха

Go

Введение

airЭто инструмент горячей загрузки для языка Go, который может отслеживать изменения файлов или каталогов, автоматически компилировать и перезапускать программу. Значительно повысить эффективность работы в период разработки.

быстрый в использовании

Код в этой статье использует модули Go и работает на Mac.

Сначала создайте каталог и инициализируйте его:

$ mkdir air && cd air
$ go mod init github.com/darjun/go-daily-lib/air

Выполните следующую команду для установкиairинструмент:

$ go get -u github.com/cosmtrek/air

Вышеупомянутая команда будет в$GOPATH/binсоздается в каталогеairЗаказ. я обычно$GOPATH/binПрисоединяйтесь к системеPATH, поэтому его можно легко выполнить в любом местеairЗаказ.

Ниже мы используем стандартную библиотекуnet/httpНапишите простой веб-сервер:

package main

import (
  "fmt"
  "log"
  "net/http"
)

func index(w http.ResponseWriter, r *http.Request) {
  fmt.Fprintln(w, "Hello, world!")
}

func main() {
  mux := http.NewServeMux()
  mux.HandleFunc("/", index)

  server := &http.Server{
    Handler: mux,
    Addr:    ":8080",
  }

  log.Fatal(server.ListenAndServe())
}

Запустите программу:

$ go run main.go

Доступ в браузереlocalhost:8080видетьHello, world!.

Если вы сейчас попросите поставитьHello, world!изменить наHello, dj!Если неairТолько изменить код, выполнитьgo buildСкомпилируйте и перезапустите.

использоватьair, нам просто нужно выполнить следующую команду для запуска программы:

$ air

airОн автоматически скомпилирует, запустит программу и проследит за изменениями файлов в текущем каталоге:

когда мы будемHello, world!изменить наHello, dj!час,airПрослушав эту модификацию, она автоматически скомпилирует и перезапустит программу:

В это время заходим в браузерlocalhost:8080, текст становитсяHello, dj!, это очень удобно?

настроить

прямое исполнениеairкоманда, используя конфигурацию по умолчанию. Общая рекомендация будет заключаться в том, чтобыairпредусмотрено в проектеair_example.tomlСделайте копию файла конфигурации и измените и настройте его в соответствии с вашими потребностями:

root = "."
tmp_dir = "tmp"

[build]
cmd = "go build -o ./tmp/main ."
bin = "tmp/main"
full_bin = "APP_ENV=dev APP_USER=air ./tmp/main"
include_ext = ["go", "tpl", "tmpl", "html"]
exclude_dir = ["assets", "tmp", "vendor", "frontend/node_modules"]
include_dir = []
exclude_file = []
log = "air.log"
delay = 1000 # ms
stop_on_error = true
send_interrupt = false
kill_delay = 500 # ms

[log]
time = false

[color]
main = "magenta"
watcher = "cyan"
build = "yellow"
runner = "green"

[misc]
clean_on_exit = true

Вы можете настроить корневой каталог проекта, каталог временных файлов, компилировать и выполнять команды, отслеживать каталог файлов, отслеживать суффиксное имя и даже настраивать цвет журнала консоли.

Режим отладки

Если вы хотите увидетьairДля более подробного процесса выполнения вы можете использовать-dопции.

использовать-dопции,airБудет выводить очень подробную информацию, которая может помочь в устранении неполадок.

Суммировать

При разработке используйтеairМожно избежать частой компиляции и перезапуска. Их автоматизация значительно повысила эффективность разработки.

Если вы найдете забавную и простую в использовании языковую библиотеку Go, вы можете отправить сообщение о проблеме в ежедневной библиотеке Go GitHub😄

Ссылаться на

  1. воздух GitHub:GitHub.com/cos beauty trek/love…
  2. Перейти на ежедневный репозиторий GitHub:GitHub.com/Darenjun/go-of…

я

мой блог:darjun.github.io

Добро пожаловать, чтобы обратить внимание на мою общедоступную учетную запись WeChat [GoUpUp], учитесь вместе и добивайтесь прогресса вместе ~