我想在我的項目中添加一個配置,我有這樣一個項目結(jié)構(gòu):app: -cmd - main -app.go -internal - config -config.go -pkg config.yaml go.mod go.sum在配置文件中,我想讀取 config.yaml:func GetConfig() *Config { once.Do(func() { instance = &Config{} logger := logging.GetLogger("info") logger.Info("start config initialisation") if err := cleanenv.ReadConfig("config.yaml", instance); err != nil { help, _ := cleanenv.GetDescription(instance, nil) logger.Info(help) logger.Fatal(err) } }) return instance}我得到一個錯誤:系統(tǒng)找不到指定的文件。要修復(fù)它,我需要將配置文件移動到啟動應(yīng)用程序的文件夾,即cmd/main 我想知道是否有可能以某種方式修復(fù)它,以便該文件與項目以及go.mod等等。我試圖在讀取文件的地方指定不同的路徑,但沒有任何效果。我使用 cleanenv 庫進(jìn)行閱讀
1 回答

一只名叫tom的貓
TA貢獻(xiàn)1906條經(jīng)驗 獲得超3個贊
wd,err := os.Getwd()
if err != nil {
// handle error
}
parentTop := filepath.Dir(wd) // if your working directory is top level you can skip this step
// and wd instead
然后使用父母和parentTop +"/pkg/config.yaml"
- 1 回答
- 0 關(guān)注
- 93 瀏覽
添加回答
舉報
0/150
提交
取消