我已经在 Rust 中的一个错误上苦苦挣扎了几个小时,但似乎无法解决它。
这是我的项目的结构:
├── Cargo.toml
└── src/
├── main.rs
└── controllers/
└── user_controller.rs
在 main.rs 中我有以下内容:
use controllers::user_controller;
我做错了什么?
我已经尝试了所有可能的解决方案,但似乎没有什么真正有帮助
您必须按照以下步骤才能使其发挥作用。 在您的控制器目录中添加
mod.rs
文件,这样您的目录结构将如下所示
├── Cargo.toml
└── src/
├── main.rs
└── controllers/
|___ mod.rs
└── user_controller.rs
在您的
mod.rs
中添加以下行
pub mod user_controller;
这会将子模块
user_controller
添加到您的 controllers
模块
最后在您的
main.rs
顶部添加此行
mod controllers;
所以你的
main.rs
看起来像这样
mod controllers;
use controllers::user_controller::process_data;
fn main() {
process_data();
}
这假设
process_data
中的 user_controller.rs
函数是公共的。希望它有帮助。