使用配置文件
使用配置文件
处理配置可能会很烦人,特别是当支持多个操作系统时,他们可能都有自己的存放短期和长期文件的地方。
对此有多种解决方案,有些解决方案比其他的更底层。
最简单的是使用 confy
crate。它会要求你提供应用程序的名字,并要求你通过一个 struct
(也就是 Serialize
, Deserialize
) 指定配置布局,并且会找出剩余的部分!
#[derive(Debug, Serialize, Deserialize)]
struct MyConfig {
name: String,
comfy: bool,
foo: i64,
}
fn main() -> Result<(), io::Error> {
let cfg: MyConfig = confy::load("my_app")?;
println!("{:#?}", cfg);
Ok(())
}
这非常简单易用,当然也放弃了可配置性,但是如果你只需要简单的 config ,这个 crate 或许适合你。
配置环境变量
TODO
- 评估现有的 crate
- 命令行参数 + 多个配置 + 环境变量
configure
可以做到所有这些么?其有好的 wrapper 吗?
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。