如何解决warning: some crates are on edition 2021 which defaults to resolver = "2", but virtual workspaces default to resolver = "1"

当出现这类问题的时候如何解决

Copy
warning: some crates are on edition 2021 which defaults to resolver = "2", but virtual workspaces default to resolver = "1"
note: to keep the current resolver, specify workspace.resolver = "1" in the workspace root's manifest
note: to use the edition 2021 resolver, specify workspace.resolver = "2" in the workspace root's manifest

这是一个 Rust 编程语言中的警告信息，通常在使用 Rust 项目的时候会遇到。这个警告信息的意思是，一些 crate（Rust 中的依赖包）被设置为为使用 Rust 2021 Edition 的解析器（resolver），而 virtual workspaces（Rust 中的虚拟工作区）的默认解析器是 Rust 2018 Edition 的解析器。如果要保持当前的解析器，需要在工作区的根目录的清单文件中指定 workspace.resolver = "1"；如果要使用 Rust 2021 Edition 的解析器，则需要在工作区的根目录的清单文件中指定 workspace.resolver = "2"。

这个警告信息的目的是提醒 Rust 开发者需要注意 Rust 2021 Edition 和 Rust 2018 Edition 之间的区别，以及在使用虚拟工作区时需要指定解析器的版本。Rust 2021 Edition 是 Rust 语言的最新版本，引入了一些新的语言特性和改进，但也可能与 Rust 2018 Edition 不兼容。因此，在使用 Rust 2021 Edition 时需要考虑到这些变化，并进行相应的调整。