さまざまなバージョンのgoアプリケーションを構築できる必要があります。「デバッグ」バージョンと通常バージョン。
これは簡単です。アプリケーションの動作を制御するconstDEBUGがあるだけですが、ビルドタイプを交換する必要があるたびに構成ファイルを編集する必要があるのは面倒です。
私はgobuild(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 / build / config.go:3:このブロック(<0>)で再宣言されたDEBUG src / build /config.debug.go:3での以前の宣言
私は何が間違っているのですか?
私が使用すべきこれを行うための別のより適切な#ifdefスタイルの方法はありますか?