Owl 架构
旧的架构
在上一版本中,Owl 采用单可执行文件的架构。
模块功能包括:
- 读取 md 文件
- 渲染 md 到 html
- 统计 md 文件数据
新的架构
新的架构将旧的部分全部移动到了owl-core
中。
命令行工具的部分,构成了新的模块owl-cli
。
如图所示,新的命令行工具包括了:
- 新建 md 文件,并且自动填充日期,文件名等元数据
- 删除 md 文件
- 列出所有 md 文件
Rust 多可执行文件管理
目录结构
这里我采用了cargo
的workspace
来管理多个可执行文件。
文件目录如下:
.
├── Cargo.toml
├── cli
│ ├── Cargo.toml
│ └── src
│ └── main.rs
├── core
├── Cargo.toml
└── src
└── main.rs
在根目录的Cargo.toml
配置文件中注明需要管理的部分:
[workspace]
members = ["core", "cli"]
调试运行
调试运行时需要注明所要运行的可执行文件:
cargo run --bin owl-core
如果需要携带参数,则需要再加上--
区分cargo
的参数和可执行文件的参数:
cargo run --bin owl-cli -- --new post-name