在我的项目中使用未声明的板条箱或模块

问题描述 投票:0回答:1

我已经在 Rust 中的一个错误上苦苦挣扎了几个小时,但似乎无法解决它。

这是我的项目的结构:

├── Cargo.toml
└── src/
    ├── main.rs
    └── controllers/
        └── user_controller.rs

在 main.rs 中我有以下内容:

use controllers::user_controller;

但是,当我尝试运行我的项目时,我收到错误消息: Error in terminal

也在 VS Code 中 Error in VS Code

我做错了什么?

我已经尝试了所有可能的解决方案,但似乎没有什么真正有帮助

rust rust-cargo
1个回答
0
投票

您必须按照以下步骤才能使其发挥作用。 在您的控制器目录中添加

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
函数是公共的。希望它有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.