Flutter命令行工具插件moinsen_cli的使用
Flutter命令行工具插件moinsen_cli的使用
[coverage]
生成于 Very Good CLI 🤖
一个强大的CLI工具,帮助你处理Flutter项目。提供了一个gRPC服务器用于执行命令,并提供实时反馈和交互支持。
开始使用 🚀
如果该CLI应用在 pub 上可用,可以通过全局激活来安装:
dart pub global activate moinsen_cli
或者本地激活:
dart pub global activate --source=path <路径到此包>
使用方法
# 启动gRPC服务器(默认端口:50051)
$ moinsen serve
# 在特定端口上启动gRPC服务器
$ moinsen serve --port 50052
# 使用自动生成的安全访问密钥启动服务器
$ moinsen serve --secret
# 使用特定的密钥启动服务器
$ moinsen serve --secret-key your_secret_key
# 启用命令日志记录
$ moinsen serve --log
# 更新CLI到最新版本
$ moinsen update
# 显示CLI版本
$ moinsen --version
# 显示使用帮助
$ moinsen --help
功能特性
- 支持双向流的gRPC命令服务
- 具有交互式命令支持(例如处理y/n提示)
- 安全的服务器访问,支持自动生成或自定义密钥
- 带有时间戳和执行详细信息的命令日志记录
- 通过pub.dev自动更新CLI
- 支持优雅的服务器关闭处理
- 实时命令执行,带有详细的响应
- 跨平台支持
命令服务协议
该CLI提供了一个gRPC服务,用于执行命令,具有以下功能:
- 双向流用于实时命令执行
- 交互式命令支持(例如处理y/n提示)
- 响应包括:
- 命令输出
- 当前工作目录
- 时间戳
- 交互式提示检测
- 错误处理,包含stderr输出
协议消息
message CommandRequest {
string session_id = 1;
string input_data = 2;
bool is_interactive_answer = 3;
}
message CommandResponse {
string session_id = 1;
string output_data = 2;
bool is_prompt = 3;
int64 timestamp = 4; // Unix时间戳(毫秒)
string current_folder = 5; // 当前工作目录
}
可用命令
serve
启动gRPC服务器以执行命令。
选项:
--port, -p
:监听的端口(默认:50051)--secret
:启用使用自动生成的密钥的安全服务器访问--secret-key
:提供特定的密钥用于服务器访问--log
:启用命令日志记录到.moinsen-command-log.json
update
将CLI更新到最新版本。
开发指南
运行测试并查看覆盖率 🧪
要运行所有单元测试,请使用以下命令:
$ dart pub global activate coverage 1.2.0
$ dart test --coverage=coverage
$ dart pub global run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info
要查看生成的覆盖率报告,可以使用 lcov:
# 生成覆盖率报告
$ genhtml coverage/lcov.info -o coverage/
# 打开覆盖率报告
$ open coverage/index.html
生成协议缓冲区
要从协议缓冲区定义重新生成gRPC代码:
$ protoc --dart_out=grpc:lib/src/generated -Iprotos protos/command.proto
更多关于Flutter命令行工具插件moinsen_cli的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
更多关于Flutter命令行工具插件moinsen_cli的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
moinsen_cli
是一个用于 Flutter 开发的命令行工具插件,旨在简化和加速 Flutter 项目的开发和维护。它提供了一系列的命令,帮助开发者快速生成代码、管理依赖、执行测试等操作。以下是 moinsen_cli
的基本使用指南。
1. 安装 moinsen_cli
首先,你需要通过 Dart 的包管理工具 pub
来安装 moinsen_cli
。在终端中运行以下命令:
dart pub global activate moinsen_cli
安装完成后,你可以通过 moinsen_cli
命令来使用该工具。
2. 常用命令
moinsen_cli
提供了多个命令来帮助你管理 Flutter 项目。以下是一些常用的命令:
2.1 生成代码
moinsen_cli
可以帮助你快速生成常见的 Flutter 代码模板,例如页面、组件、模型等。
生成页面:
moinsen_cli generate page <page_name>
这将生成一个名为 <page_name>
的页面,包括 widget
、state
和 route
等相关文件。
生成组件:
moinsen_cli generate component <component_name>
这将生成一个名为 <component_name>
的组件。
生成模型:
moinsen_cli generate model <model_name>
这将生成一个名为 <model_name>
的模型类。
2.2 管理依赖
moinsen_cli
提供了便捷的命令来管理项目的依赖。
添加依赖:
moinsen_cli add <dependency_name>
这将自动在 pubspec.yaml
文件中添加指定的依赖。
移除依赖:
moinsen_cli remove <dependency_name>
这将从 pubspec.yaml
文件中移除指定的依赖。
2.3 运行测试
moinsen_cli
可以帮助你快速运行项目的测试。
运行所有测试:
moinsen_cli test
这将运行项目中所有的测试用例。
运行指定测试文件:
moinsen_cli test <test_file_path>
这将运行指定路径的测试文件。
2.4 清理项目
moinsen_cli
提供了清理项目的命令,帮助你删除不必要的文件和缓存。
清理项目:
moinsen_cli clean
这将清理项目中的临时文件和缓存。
3. 其他功能
moinsen_cli
还提供了其他一些功能,例如:
- 版本管理: 查看当前
moinsen_cli
的版本。
moinsen_cli --version
- 帮助信息: 查看
moinsen_cli
的所有命令和用法。
moinsen_cli --help
4. 自定义配置
你还可以通过配置文件来定制 moinsen_cli
的行为。在项目根目录下创建一个 .moinsen_cli.yaml
文件,并根据需要进行配置。
# 示例配置
generate:
page:
template: custom_page_template.dart
component:
template: custom_component_template.dart