在Rust工作区中如何从pilot的main.rs访问prom的lib.rs
从pilot访问prom中函数的解决方法
当前项目里,prom是peach的依赖 crate,但peach默认不会把自身依赖的公共接口暴露给上层的pilot,所以得通过peach中转导出prom的接口,才能在pilot里调用。
步骤1:在peach中导出prom的接口
修改peach/src/lib.rs,选以下两种导出方式之一即可:
方式1:直接导出指定函数
只把需要用到的add函数暴露给外部:
// peach/src/lib.rs pub use prom::add;
方式2:导出整个prom模块
把整个prom模块暴露给外部,方便后续调用更多prom里的函数:
// peach/src/lib.rs pub use prom;
步骤2:在pilot中调用prom的函数
根据上面选的导出方式,修改pilot/src/main.rs:
对应方式1的调用写法
fn main() { println!("Hello, world!"); peach::add(3, 6); }
对应方式2的调用写法
fn main() { println!("Hello, world!"); peach::prom::add(3, 6); }
确认依赖配置无需修改
现有Cargo配置已经正确建立了依赖关系:
- 根工作区包含
pilot和peach pilot通过路径依赖引入peachpeach通过路径依赖引入prom
不用调整任何Cargo.toml文件。
内容的提问来源于stack exchange,提问作者Mikky V
相关产品推荐
相关产品推荐

