我查看tonic的源码时,发现它tonic包里的cargo.toml中有这么一条依赖配置: prost1 = {package = "prost", version = "0.9", optional = true} 这里我奇怪的是package这个key,我翻遍The Cargo Book也没找到这个配置的具体说明,请大佬帮忙解释这个key是什么意思?完整的cargo.toml配置选项在哪里能找到?
1
共 3 条评论, 1 页
评论区
写评论谢谢前面两位的回复,很有帮助!我自己也很汗颜,还是看书不认真啊。
由楼上给的链接,这两句话很适合解决你的问题:
即
package
key,而且默认是 dependency 的 lib crate 名(也就是在 dependency 的 Cargo.toml 的[package]
表的 name)。[dependency]
表写的依赖名(key),一般情况下也就是 dependency 的 lib crate 名,如果你希望给依赖名一个别名,就可以这样用别名 = {package = "原名"}
,它相当于在 rs 文件中帮你写了use 原名 as 别名;
。而且定义了依赖的别名之后,你只能使用别名,无法使用依赖的原名。https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html
最后一段。