You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SpringBoot环境下OpenAPI Generator模板定制问题咨询

问题解答

1. 模板目录仅包含*.mustache文件是否正常?

完全正常。OpenAPI Generator的代码生成逻辑由其核心Java库实现,模板目录中的.mustache文件仅负责定义生成代码的结构、格式和内容模板,无需包含.class或.java文件。你获取的是官方Spring服务端生成器的纯模板文件,这是标准状态,无需额外添加其他类型文件。

2. 能否在Maven配置中添加自定义选项并在Mustache模板中引用?

可以实现,但你的配置方式有误,正确步骤如下:

正确的Maven配置方式

自定义参数需要通过插件的<additionalProperties>节点声明,而非直接放在<configuration>或<configOptions>下。以useLombok为例,配置示例:

<plugin>
    <groupId>org.openapitools</groupId>
    <artifactId>openapi-generator-maven-plugin</artifactId>
    <version>7.10.0</version>
    <executions>
        <execution>
            <goals>
                <goal>generate</goal>
            </goals>
            <configuration>
                <!-- 其他基础配置:API spec路径、生成器类型等 -->
                <generatorName>spring</generatorName>
                <templateDirectory>${project.basedir}/mytemplates</templateDirectory>
                <!-- 自定义参数需放在此处 -->
                <additionalProperties>
                    <additionalProperty>useLombok=true</additionalProperty>
                </additionalProperties>
            </configuration>
        </execution>
    </executions>
</plugin>

模板中的正确引用

在pojo.mustache中直接使用{{#useLombok}}语法即可,但需注意:

  • 可临时在模板中加入{{.}}输出所有上下文变量,确认useLombok是否存在于模板可访问的上下文里。
  • 确保<additionalProperties>的层级正确,需与<generatorName>、<templateDirectory>等同级,放在<configuration>节点下。

排查要点

  1. 查看Maven构建日志,确认插件是否加载了自定义的additionalProperties参数。
  2. 再次验证自定义模板是否生效(比如修改模板中的固定文本,看生成的代码是否同步变化)。
  3. 若尝试additionalProperties仍不生效,可尝试将参数放在<configOptions>下,但需注意configOptions主要用于官方预定义参数,自定义参数优先推荐使用additionalProperties。

内容的提问来源于stack exchange,提问作者CoderJammer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 03:54:51