В настоящее время я разрабатываю службу, которая может быть создана как служба Windows или запускаться как исполняемый файл OSX/linux.Настройка GOOS с go go
Я использую строить теги на окнах файлов, в том числе с основным методом
// +build windows
А на другой файл, содержащий основной метод
// +build !windows
Когда я исполняю go run *.go
на mac, я получаю следующее сообщение об ошибке
mainDOS.go:10:2: no buildable Go source files in /Users/michaelbrandenburg/Documents/git-repo/goCode/src/golang.org/x/sys/windows/svc
windowsService.go:15:2: no buildable Go source files in /Users/michaelbrandenburg/Documents/git-repo/goCode/src/golang.org/x/sys/windows/svc/debug
install.go:14:2: no buildable Go source files in /Users/michaelbrandenburg/Documents/git-repo/goCode/src/golang.org/x/sys/windows/svc/eventlog
install.go:15:2: no buildable Go source files in /Users/michaelbrandenburg/Documents/git-repo/goCode/src/golang.org/x/sys/windows/svc/mgr
Есть ли способ запустить go run
и настроить архитектуру, которую я хочу запустить? Я могу создавать исполняемые файлы без проблем.
Нет смысла устанавливать GOOS с 'go run', потому что' go run' предназначен для немедленного выполнения на ОС хоста. – JimB
Или, может быть, вы смущены о «ограничениях сборки»? 'go run' не следует ограничениям сборки, потому что вы уже явно указываете файлы для сборки в качестве аргументов. Вы не должны использовать 'go run' для более простого тестирования, и у вас есть' go install' и 'go build' для работы с полными пакетами. – JimB