3.9. Camel REST DSL OpenApi Maven 插件
Camel REST DSL OpenApi Maven 插件支持以下目标:
- camel-restdsl-openapi:generate - 要从 OpenApi 规范生成使用者 REST DSL RouteBuilder 源代码
- camel-restdsl-openapi:generate-with-dto - 从 OpenApi 规范生成使用者 REST DSL RouteBuilder 源代码,以及通过 swagger-codegen-maven-plugin 生成的 DTO 模型类。
- camel-restdsl-openapi:generate-xml - 从 OpenApi 规范生成消费者 REST DSL XML 源代码
- camel-restdsl-openapi:generate-xml-with-dto - 要从 OpenApi 规范生成使用者 REST DSL XML 源代码,以及通过 swagger-codegen-maven-plugin 生成的 DTO 模型类。
- camel-restdsl-openapi:generate-yaml - 从 OpenApi 规范生成消费者 REST DSL YAML 源代码
- camel-restdsl-openapi:generate-yaml-with-dto - 从 OpenApi 规范生成使用者 REST DSL YAML 源代码,以及通过 swagger-codegen-maven-plugin 生成的 DTO 模型类。
3.9.1. 将插件添加到 Maven pom.xml 复制链接链接已复制到粘贴板!
此插件可以通过将其添加到 plugins 部分来将其添加到 Maven pom.xml 文件中,例如在 Spring Boot 应用程序中:
然后,该插件可以使用其前缀 camel-restdsl-openapi 来执行,如下所示。
$mvn camel-restdsl-openapi:generate
$mvn camel-restdsl-openapi:generate
3.9.2. camel-restdsl-openapi:generate 复制链接链接已复制到粘贴板!
Camel REST DSL OpenApi Maven 插件的目标是从 Maven 生成 REST DSL RouteBuilder 实施源代码。
3.9.2.1. 选项 复制链接链接已复制到粘贴板!
该插件支持可从命令行配置以下选项(use -D 语法),或者在 配置 标签的 pom.xml 文件中定义。
| 参数 | 默认值 | 描述 |
|---|---|---|
|
|
|
设置为 |
|
|
仅用于包括指定的操作 id。可以使用逗号分隔多个 id。可以使用通配符,如 | |
|
|
|
OpenApi 规范的 URI,支持文件系统路径、HTTP 和类路径资源,默认为项目目录中的 |
|
| 在远程获取 OpenApi 规格定义时添加授权标头。使用逗号分隔多个值,传递一个 URL 编码的 name:header 字符串。 | |
|
|
来自 |
从 OpenApi 规格标题获取生成的类的名称,或者默认设置为 |
|
|
从 |
生成类的软件包名称,默认为 OpenApi 规格主机值或 |
|
|
|
默认情况下,使用哪个缩进字符,默认为四个空格,您可以使用 |
|
|
|
在项目目录中,将生成的源文件放在何处,默认为 |
|
|
实施 | |
|
|
| to uri 的默认语法是使用直接组件。 |
|
|
| 是否包含使用检测到的其他组件的生成部分。 |
|
|
如果 | |
|
|
| 是否启用请求验证。 |
|
| 覆盖 OpenAPI 规格中定义的 api 基础路径。 | |
|
|
| 允许生成自定义 RequestMapping 映射值。多个映射值可以传递如下:
|
3.9.3. 带有 Servlet 组件的 Spring Boot 项目 复制链接链接已复制到粘贴板!
如果 Maven 项目是 Spring Boot 项目,并且启用了 restConfiguration,并且 servlet 组件用作 REST 组件,那么此插件将自动检测软件包名称(如果尚未明确配置 packageName),则使用相同的软件包名称来生成 Rest DSL 源代码和所需的 CamelRestController 支持类。
3.9.4. camel-restdsl-openapi:generate-with-dto 复制链接链接已复制到粘贴板!
作为 generate 目标,但也通过自动执行 swagger-codegen-maven-plugin 来生成 DTO 模型类,从 OpenApi 规范生成 DTO 模型类的 java 源代码。
此插件范围有限,仅限于支持使用 swagger-codegen-maven-plugin 生成模型 DTOs 的良好工作量集。如果您需要更多电源和灵活性,请直接使用 Swagger Codegen Maven 插件 来生成 DTO 而不是此插件。
DTO 类可能需要额外的依赖项,例如:
3.9.4.1. 选项 复制链接链接已复制到粘贴板!
该插件支持以下 附加选项
| 参数 | 默认值 | 描述 |
|---|---|---|
|
| 3.0.36 |
要使用的 |
|
| 目标输出路径(默认为 ${project.build.directory}/generated-sources/openapi) | |
|
|
| 用于生成的模型对象/类的软件包 |
|
| 为模型类和枚举设置 pre- 或 suffix | |
|
| 为模型类和枚举设置 pre- 或 suffix | |
|
| false | 在生成的模型中启用 XML 注解(仅适用于为 JSON 和 XML 提供支持的库) |
|
|
将特定于语言的参数映射到 |
3.9.5. camel-restdsl-openapi:generate-xml 复制链接链接已复制到粘贴板!
Camel REST DSL OpenApi Maven 插件的 camel-restdsl-openapi:generate-xml 目标用于从 Maven 生成 REST DSL XML 实施源代码。
3.9.5.1. 选项 复制链接链接已复制到粘贴板!
该插件支持从命令行配置以下选项(use -D 语法),或者在 < configuration > 标签的 pom.xml 文件中定义。
| 参数 | 默认值 | 描述 |
|---|---|---|
|
|
|
设置为 |
|
|
仅用于包括指定的操作 id。可以使用逗号分隔多个 id。可以使用通配符,如 | |
|
|
|
OpenApi 规范的 URI,支持文件系统路径、HTTP 和类路径资源,默认为项目目录中的 |
|
| 在远程获取 OpenApi 规格定义时添加授权标头。使用逗号分隔多个值,传递一个 URL 编码的 name:header 字符串。 | |
|
|
|
在项目目录中,将生成的源文件放在何处,默认为 |
|
|
| 作为输出的 XML 文件的名称。 |
|
|
| 如果启用生成 OSGi Blueprint XML,而不是 Spring XML。 |
|
|
实施 | |
|
|
| to uri 的默认语法是使用直接组件。 |
|
|
| |
| 是否包含使用检测到的其他组件的生成部分。 |
| |
|
如果 |
|
|
| 是否启用请求验证。 |
| |
| 覆盖 OpenAPI 规格中定义的 api 基础路径。 |
|
|
3.9.6. camel-restdsl-openapi:generate-xml-with-dto 复制链接链接已复制到粘贴板!
充当 generate-xml 目标,但也通过自动执行 swagger-codegen-maven-plugin 来生成 DTO 模型类的 DTO 模型类,以从 OpenApi 规范生成 DTO 模型类的 java 源代码。
此插件范围有限,仅限于支持使用 swagger-codegen-maven-plugin 生成模型 DTOs 的良好工作量集。如果您需要更多电源和灵活性,请直接使用 Swagger Codegen Maven 插件 来生成 DTO 而不是此插件。
DTO 类可能需要额外的依赖项,例如:
3.9.6.1. 选项 复制链接链接已复制到粘贴板!
该插件支持以下 附加选项
| 参数 | 默认值 | 描述 |
|---|---|---|
|
| 3.0.36 |
要使用的 |
|
| 目标输出路径(默认为 ${project.build.directory}/generated-sources/openapi) | |
|
|
| 用于生成的模型对象/类的软件包 |
|
| 为模型类和枚举设置 pre- 或 suffix | |
|
| 为模型类和枚举设置 pre- 或 suffix | |
|
| false | 在生成的模型中启用 XML 注解(仅适用于为 JSON 和 XML 提供支持的库) |
|
|
将特定于语言的参数映射到 |
3.9.7. camel-restdsl-openapi:generate-yaml 复制链接链接已复制到粘贴板!
camel-restdsl-openapi:generate-yaml 目标使用 Camel REST DSL OpenApi Maven 插件从 Maven 生成 REST DSL YAML 实施源代码。
3.9.7.1. 选项 复制链接链接已复制到粘贴板!
该插件支持从命令行配置以下选项(use -D 语法),或者在 < configuration > 标签的 pom.xml 文件中定义。
| 参数 | 默认值 | 描述 |
|---|---|---|
|
|
|
设置为 |
|
|
仅用于包括指定的操作 id。可以使用逗号分隔多个 id。可以使用通配符,如 | |
|
|
|
OpenApi 规范的 URI,支持文件系统路径、HTTP 和类路径资源,默认为项目目录中的 |
|
| 在远程获取 OpenApi 规格定义时添加授权标头。使用逗号分隔多个值,传递一个 URL 编码的 name:header 字符串。 | |
|
|
|
在项目目录中,将生成的源文件放在何处,默认为 |
|
|
| 作为输出的 XML 文件的名称。 |
|
|
实施 | |
|
|
| to uri 的默认语法是使用直接组件。 |
|
|
| |
| 是否包含使用检测到的其他组件的生成部分。 |
| |
|
如果 |
|
|
| 是否启用请求验证。 |
| |
| 覆盖 OpenAPI 规格中定义的 api 基础路径。 |
|
|
3.9.8. camel-restdsl-openapi:generate-yaml-with-dto 复制链接链接已复制到粘贴板!
充当 generate-yaml 目标,但也通过自动执行 swagger-codegen-maven-plugin 生成 DTO 模型类的 java 源代码,从 OpenApi 规范生成 DTO 模型类的 java 源代码。
此插件范围有限,仅限于支持使用 swagger-codegen-maven-plugin 生成模型 DTOs 的良好工作量集。如果您需要更多电源和灵活性,请直接使用 Swagger Codegen Maven 插件 来生成 DTO 而不是此插件。
DTO 类可能需要额外的依赖项,例如:
3.9.8.1. 选项 复制链接链接已复制到粘贴板!
该插件支持以下 附加选项
| 参数 | 默认值 | 描述 |
|---|---|---|
|
| 3.0.36 |
要使用的 |
|
| 目标输出路径(默认为 ${project.build.directory}/generated-sources/openapi) | |
|
|
| 用于生成的模型对象/类的软件包 |
|
| 为模型类和枚举设置 pre- 或 suffix | |
|
| 为模型类和枚举设置 pre- 或 suffix | |
|
| false | 在生成的模型中启用 XML 注解(仅适用于为 JSON 和 XML 提供支持的库) |
|
|
将特定于语言的参数映射到 |