swagger - Swagger Codegen :- 供应商扩展不可访问
问题描述
我正在使用示例Pet Store JSON 文件来生成基于 spring-boot 的项目。要在生成的代码中添加诸如 @EnableEurekaClient 之类的注释,我试图在 swagger 文件中使用供应商扩展。扩展名可以在下面看到为swagger 定义中的x-enableEureka。
swagger: "2.0"
info:
description: "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters."
version: "1.0.0"
title: "Swagger Petstore"
termsOfService: "http://swagger.io/terms/"
x-enableEureka: true
我controller.mustache
通过添加以下项目来修改。但是,我无法从以下任一语句访问其在生成的控制器类中的值。
{{vendorExtensions.x-enableEureka}}
{{x-enableEureka}}
我的意图是使用 x-enableEureka 作为条件。
{{^vendorExtensions.x-enableEureka}}
@EnableEurekaClient
{{/vendorExtensions.x-enableEureka}}
此处定义了访问供应商扩展的类似方式。我不确定为什么它不起作用。
有人能帮帮我吗。我不确定我是否将供应商扩展名放置在错误的位置。我什至也尝试将它放在 Path 块中。
Swagger Codegen 版本 2.4.15
解决方案
您必须使用#
符号而不是^
。正确的用法是
{{#vendorExtensions.x-enableEureka}}
@EnableEurekaClient
{{/vendorExtensions.x-enableEureka}}
回复晚了非常抱歉。