我使用的文件是log4rs.yaml
和.env
。
当使用cargo build
时,不再找到log4rs.yaml
。
log4rs::init_file("log4rs.yaml", Default::default()).unwrap();
miscellaneous::check_env_variable();
字符串
当我运行二进制文件时,我有以下错误消息:
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: No such file or directory (os error 2)', src/main.rs:27:58
型
我尝试使用一个构建脚本没有成功,不知道如何进行,或者如果它真的是这里的问题
1条答案
按热度按时间lx0bsm1f1#
既然你说这些文件都位于你的项目文件夹/目录的根目录下,你可能(最初)要找的是名为
CARGO_MANIFEST_DIR
的环境变量。这个变量一旦被读取(
std::env::var
),就会返回一个到你的Cargo.toml所在的文件夹/目录的绝对路径。最初的解决方案看起来像这样:
字符串
最终的解决方案实际上可能需要你(以某种方式):
1.在开发环境外为
log4rs.yaml
设置默认路径,如:~/.config/my_app/log4rs.yaml
或~/.my_app/log4rs.yaml
1.添加支持为
log4rs.yaml
文件传递任意路径,以便我们可以从其他地方(包括开发文件夹内)获取它。