在 Go 上编译之前如何预检查和设置变量?

How to pre-check and set variable before compiling on Go?

我将预先检查 HCL 内容并将其设置为 golang 中的变量。 即 HCL 内容应在编译前解析并设置为特定变量。

这是例子。

.
├── config.mel
└── main.go

config.mel 具有以下 HCL 字符串。

types {
    directory = "string"
    listen = "ipaddr"
}

main.go 有以下几行:

package main

import (
     "github.com/hashicorp/hcl"
)

func main() {
    hcl.Parse(HCL_CONTENTS)
}

有什么方法可以在编译前设置HCL_CONTENTS变量吗?

如果您可以构建一个命令来创建您想要的代码,您可以使用 go generate 来完成此操作。