尽管有一些与此相关的问题,但所有这些似乎让我感到困惑。
我有一个结构如下的项目。
当在main.rs中导入cli模块时,它可以正常工作,但是当我尝试在lib.rs中执行相同操作时,出现以下错误
= help: name the file either lib/cli.rs or lib/cli/mod.rs inside the directory "src"
但我想将其保留在cli文件夹中,因为我将不得不在cli文件夹中添加更多代码。为什么货物要求我创建lib文件夹?
下面是我的toml文件。
[package]
name = "feline"
version = "0.0.1"
license = "MIT"
authors = ["Akshay Naik <[email protected]>"]
edition = "2018"
[dependencies]
smol = { version = "0.1", features = ["tokio02"] }
futures = "0.3.4"
clap = "~2.27.0"
更新:Thea的目标是将所有逻辑移至lib.rs并从main.rs调用单个函数
代码:
删除行mod lib;
并调用feline :: start()解决了该问题,
我在rustlang论坛上得到了答案。线。
“使用mod关键字时,您正在创建一个模块,而不是导入一个模块。”
通过访问下面的链接查看完整的答案。
https://users.rust-lang.org/t/main-rs-and-lib-rs-at-same-level/42499