为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 Go 中的子文件夹访问配置文件

如何从 Go 中的子文件夹访问配置文件

Go
芜湖不芜 2021-11-01 17:28:41
我的项目结构看起来很像这样:project/    api/        api.go    config/        config.go        config.toml    tests/        api_test.go    main.go因此,每当我初始化配置包时,我都会尝试使用相对路径读取配置文件:config/config.toml. 只要我运行我的程序,这就可以正常工作:go run main.go当我尝试运行测试时出现问题:go test project/tests. 我的配置包找不到文件,config/config.toml因为当前的工作目录不是project/第一种情况,而是project/tests/.有没有什么方便的方法可以从run和访问配置文件test?
查看完整描述

1 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

最后,我已经完成了更改配置文件加载方式的行为。之前,加载是在configpacked insideinit()方法中完成的。

取而代之的是,我创建Load(path string)了根据传递的path变量执行配置文件加载的方法。

现在,我这样称呼它main.go

config.Load("config/")

api_test.go这样开始:

config.Load("../config/")

这不是一个很好的解决方案,但在这种情况下,用户不需要在运行测试时指定任何额外的参数。


查看完整回答
反对 回复 2021-11-01
  • 1 回答
  • 0 关注
  • 205 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信