在第三方库上生锈“未解决的导入”。新手问题

粘土

我想使用名为warp的第三方库来编译一个简单的rust程序:

[package]
name = "hello-world-warp"
version = "0.1.0"

[dependencies]
warp = "0.1.18"

src/main.rs

use warp::{self, path, Filter};

fn main() {
    // GET /hello/warp => 200 OK with body "Hello, warp!"
    let hello = warp::path!("hello" / String)
        .map(|name| format!("Hello, {}!", name));

    warp::serve(hello)
        .run(([127, 0, 0, 1], 3030));
}

当我运行时,cargo build我看到它下载了warp和许多传递依赖项,然后我得到了以下错误:

Compiling hello-world-warp v0.1.0 (<path>) error[E0432]: unresolved import `warp`
 --> src/main.rs:3:12
  |
3 | use warp::{self, path, Filter};
  |            ^^^^ no `warp` in the root

error: cannot find macro `path!` in this scope

我已经阅读了有关模块和包装箱的各种文档。在这种简单情况下,我在做什么错?

内核

您复制的示例使用了适用于最新版本的Rust的语法,但是您无意中将Rust设置为模仿该语言的旧版“ 2015”。

您必须添加:

edition = "2018"

到您Cargo.toml[package]部分。

开始新项目时,请始终使用cargo new这将确保正确设置了最新版本标志。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章