首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Go中的子文件夹访问配置文件

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

Stack Overflow用户
提问于 2015-09-02 14:02:06
回答 1查看 1.1K关注 0票数 0

我的项目结构看起来很像这样

代码语言:javascript
复制
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/

是否有从runtest访问配置文件的方便方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-02 14:40:11

最后,我已经完成了更改如何加载配置文件的行为。在此基础上,采用config填充init()方法进行加载。

相反,我创建了方法Load(path string),它根据传递的path变量执行配置文件的加载。

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

代码语言:javascript
复制
config.Load("config/")   

像这样的api_test.go

代码语言:javascript
复制
config.Load("../config/")

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

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32355314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档