我今天开始学习Rust,但我卡在了这一步。我想在我的项目中使用rand crate,所以我按照教程建议更新了我的Cargo.toml
:
[package]
name = "guessing_game"
version = "0.1.0"
authors = ["Novice <novice.coder@gmail.com>"]
[dependencies]
rand = "0.3.14"
在我的代码中导入它:
use rand::Rng;
它会报以下错误:
error[E0432]: unresolved import `rand`
--> src/main.rs:1:5
|
1 | use rand::Rng;
| ^^^^ maybe a missing `extern crate rand;`?
我有什么遗漏吗?
我按建议添加了 edition = "2018"
:
Cargo.toml:
[package]
name = "guessing_game"
version = "0.1.0"
authors = ["Novice <novice.coder@gmail.com>"]
edition = "2018"
[dependencies]
rand = "0.3.14"
Cargo build现在会给出:
$ cargo build --verbose
Fresh libc v0.2.45
Fresh rand v0.4.3
Fresh rand v0.3.22
Compiling guessing_game v0.1.0 (/home/bappaditya/projects/guessing_game)
Running `rustc --edition=2018 --crate-name guessing_game src/main.rs --color always --crate-type bin --emit=dep-info,link -C debuginfo=2 -C metadata=4d1c2d587c45b4
c6 -C extra-filename=-4d1c2d587c45b4c6 --out-dir
/home/bappaditya/projects/guessing_game/target/debug/deps -C
incremental=/home/bappaditya/projects/guessing_game/target
/debug/incremental -L
dependency=/home/bappaditya/projects/guessing_game/target/debug/deps --
extern rand=/home/bappaditya/projects/guessing_game/target/debug/deps/libra
nd-78fc4b142cc921d4.rlib`
error: Edition 2018 is unstable and only available for nightly builds of rustc.
我使用
rustup update
更新了 Rust,并在 main.rs 中添加了 extern crate rand;
。现在它按预期工作。程序已经运行,但在我的 vscode 问题标签中仍然显示错误 -
error[E0432]: unresolved import `rand`
--> src/main.rs:1:5
|
1 | use rand::Rng;
| ^^^^ maybe a missing `extern crate rand;`?
edition = "2018"
,您是怎么忽略它的? - Stargateurmain.rs
的开头添加extern crate rand;
,正如 @LambdaFairy 在他们的回答中提到的。 - rodrigo