【发布时间】:2015-03-12 21:37:50
【问题描述】:
我无法导入和使用我编写的模块,不知道哪里出错了。
我的起始目录结构是:
/src/main.rs <- contains fn main()
/Cargo.toml
我想从我拥有的一个大主文件中重构一些代码,所以我运行了
cargo new mnemonic
留给我:
/src/main.rs <- contains fn main()
/Cargo.toml
/mnemonic/src/lib.rs
/mnemonic/Cargo.toml
在我创建的/mnemonic/src/lib.rs 中:
pub mod mnemonic;
然后将我的代码放入/mnemonic/src/mnemonic.rs(有两个我想从main 使用的公共函数)。我从mnemonic/ 运行cargo build,然后回到我的主src,我试过了
extern crate mnemonic;
和
use mnemonic;
我也试过use mnemonic::mnemonic;
在所有情况下,它都无法找到 crate 或出现未解决的导入错误。
我还尝试将包含 2 个 pub 函数的代码放入 /src/mnemonic.rs
在/src/main.rs 中输入:
use mnemonic;
我还尝试将我的代码放入 mnemonic/src/lib.rs 并尝试从 src/main.rs 尝试 extern crate mnemonic; use mnemonic;
我应该在您建议的任何情况下编辑Cargo.toml 吗?
【问题讨论】:
-
您可能想在这里复习一下术语。我知道当你第一次开始使用它时会感到困惑,但是 crate 和 module 之间有一个重要的区别。您在运行
cargo new时创建了一个新的 crate。
标签: module rust rust-cargo