Мне нужно иметь возможность создавать разные версии приложения go; версия отладки и обычная версия.Как правильно использовать теги сборки?
Это легко сделать; У меня просто есть константа DEBUG, которая управляет поведением приложения, но раздражает необходимость редактировать файл конфигурации каждый раз, когда мне нужно менять типы сборки.
Я читал о ходе сборке (http://golang.org/pkg/go/build/) и тегах, я думал, что, возможно, я мог бы сделать это:
config.go:
// +build !debug
package build
const DEBUG = false
config.debug.go:
// +build debug
package build
const DEBUG = true
Тогда я должен был бы построить, используя «go build» или «go build -tags debug», и теги должны исключать config.go и включать config.debug.go.
... но это не работает. Я получаю:
SRC/сборки/config.go: 3: DEBUG повторно объявлен в этом блоке (< 0>) предыдущий декларации в Src/сборки/config.debug.go: 3
Что я делаю не так?
Есть ли другой и более подходящий стиль #ifdef для этого, я должен использовать?
yup thanks, в этом была проблема; отредактированный вопрос был менее глупым. – Doug