1 个不稳定版本
| 0.1.0 | 2023年4月6日 |
|---|
#6 in #utoipa
12KB
186 行
protoc-gen-prost-utoipa
A protoc 插件,用于从 proto 文件生成 utoipa 模式实现。
当在仅使用 Rust 代码的项目中使用时,使用 Prost! 生成 protobuf 定义的首选机制是在 build.rs 文件中使用 prost-build,然后使用 prutoipa-build 生成 utoipa 模式。然而,在多语言环境中,利用 Protocol Buffers 生态系统中的通用工具可能更有优势。常用的工具之一是 buf,它简化了代码生成过程,并包括一些有用的功能,例如代码检查、包管理和破坏性变更检测。
使用 protoc 和 protoc-gen-prost
首先,确保 protoc-gen-prost-utoipa 已安装在你的 $PATH 目录中。
为了更容易地处理由 prost 生成的基定义,此插件假定它是在与 protoc-gen-prost 相同的 protoc 调用中运行的链式模式。这可以通过在同一个 protoc 调用中指定多个插件来实现,如下所示
protoc -I proto proto/greeter/v1/greeter.proto \
--prost_out=proto/gen \
--prost-utoipa_out=proto/gen
作为单独的调用运行时,protoc 不会意识到由 protoc-gen-prost 生成的基定义。在这种情况下,需要使用 no_include 指令,并且需要单独包含生成的 .utoipa.rs 文件。
protoc -I proto proto/greeter/v1/greeter.proto \
--prost_out=proto/gen \
protoc -I proto proto/greeter/v1/greeter.proto \
--prost-utoipa_out=proto/gen \
--prost-utoipa_opt=no_include
使用 buf
尚未...
依赖项
~9–19MB
~269K SLoC