作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我的项目结构看起来很像这样:
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
访问配置文件吗?
最佳答案
最后,我完成了更改配置文件加载方式的行为。之前,加载是在 config
中完成的,打包在 init()
方法中。
取而代之的是,我创建了方法 Load(path string)
,它根据传递的 path
变量执行配置文件的加载。
现在,我从 main.go
中这样调用它:
config.Load("config/")
然后从 api_test.go
像这样:
config.Load("../config/")
这不是一个很好的解决方案,但在那种情况下,用户在运行测试时不需要指定任何额外的参数。
关于go - 如何从Go中的子文件夹访问配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32355314/
我是一名优秀的程序员,十分优秀!