【问题标题】:Micronaut Swagger multimoduleMicronaut Swagger 多模块
【发布时间】:2021-02-27 19:12:26
【问题描述】:

我正在尝试从多模块项目中可视化 API 定义。首先我想从简单开始,我想从父模块可视化yaml。然后我将在我的 Swagger 控制器中添加其他 API 来调用特定的 url,就像在示例中所做的那样 https://github.com/frehov/micronaut-swagger-server

我有我的 Swagger 控制器和我的 SwaggerConfiguration 以及我的 index.hbs 资源 > views.swagger 我从 repo https://github.com/frehov/micronaut-swagger-server 中获取了示例

这是我的结果:

而不是类似的东西:

当我比较这两个项目时,与示例相比,不知何故,我的目标文件夹中的 view.swagger 包以不同的方式生成:

我错过了什么? 你能看看我的回购:

https://github.com/amhg/swagger

谢谢

【问题讨论】:

    标签: maven swagger micronaut


    【解决方案1】:

    项目中包含 swagger-ui-wrapper (index.hbs) 的文件夹称为“views.swagger”,而示例定义了“views/swagger”(因此 swagger 是视图中的文件夹)。改变它,你就会在你的目标中获得视图/招摇结果。

    您还需要启用 micronaut 车把视图(即从控制器提供 .hbs 文件);将这些添加到启动的 pom.xml 中(不是在 root-pom 中!):

        <dependency>
          <groupId>io.micronaut</groupId>
          <artifactId>micronaut-views</artifactId>
        </dependency>
        <dependency>
          <groupId>com.github.jknack</groupId>
          <artifactId>handlebars</artifactId>
          <version>4.1.0</version>
          <scope>runtime</scope>
        </dependency>
    

    这些将执行将从控制器返回的配置呈现到 html 页面的魔力。 根据您要放置 swagger 注释的控制器的位置,您可能还需要添加

        <dependency>
          <groupId>io.swagger.core.v3</groupId>
          <artifactId>swagger-annotations</artifactId>
          <version>${swagger.version}</version>
          <scope>compile</scope>
        </dependency>
    

    【讨论】:

    • 我不确定这是否是主要原因,我添加了另一个图像,文件夹结构在我运行 mvn clean install 后立即出现。我仍然从 localhost:8080/api 得到相同的结果页面
    • 抱歉,您只是被文件夹名称问题阻止了;我添加了启用处理程序栏视图的说明
    • 谢谢,现在是正确的文件夹结构“views/swagger”。我在“启动”项目中添加了 swagger 依赖项。但是我无法获得大摇大摆的观点,我仍然得到相同的结果。能否请您看看我的更改,github.com/amhg/swagger.git
    • 在 localhost:8080/api 返回一个 json 之前,现在它返回一个 swagger-ui 页面(我克隆并运行了 git-branch 来验证)。 “相同的结果”是什么意思?
    • 我的意思是相同的结果,只有 json (no swagger-ui) 。我在开头添加的图像:“这是我的结果”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-01
    • 2021-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-24
    • 1970-01-01
    相关资源
    最近更新 更多