问题标签 [swagger-maven-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
5122 浏览

spring - Spring boot & Swagger 2 UI & custom requestmappinghandlermapping - 映射问题

我有自己的 RequestMappingHandlerMapping,我正在使用 springfox-swagger-ui。添加自定义映射后,我无法在http://localhost:8080/swagger-ui.html实现 swagger ui 。有任何想法吗?

这是我的配置。

这是我的 pom.xml:

0 投票
1 回答
967 浏览

json - 如何使 Jaxrs-Analyzer 生成 swagger 2 定义 json 文档?

当我使用Jaxrs-Analyzer Version 0.9时,它会生成swagger 1.2json 文档。我如何配置jaxrs-analyzer以确保它生成swagger 2json 定义?

编辑

示例招摇 json doc;

0 投票
1 回答
1085 浏览

java - 使用 swagger for Java 自动生成休息端点

我的任务是为使用 jaxrs 开发的大型 API 寻找最佳方式,以便为第三方提供文档。该代码目前已使用 javadoc 进行了详细记录。我的问题是帮助确定基于我迄今为止的研究的最佳方法,并验证我们是否走在正确的道路上,所以我正在寻找输入、评论或其他框架来查看。我确信这是一个常见的用例,其他人也会遇到类似的问题,并且非常感谢其他有招摇和文档经验的人提供的任何意见。

我们有以下要求:

  • 我们没有大量的注释使代码混乱。
  • 我们可以记录返回类型,例如嵌套对象及其正确的 JSON 结构。
  • 我们可以指定标题、链接和元信息(这意味着我们需要 swagger 2.0 而不是 1.2)
  • 我们希望尽可能减少时间和成本,但仍保留高质量的文档。
  • 适用于 JDK 8。

我考虑了以下框架,但每个框架似乎都有一些主要缺点,要么使它们难以使用(对于这个项目),要么我可能误解了。

Swagger JAXRS doclet:链接

这个 maven 插件在构建时工作,能够根据现有的 javadoc 注释为我们提供合理的文档。但是,它不支持 Swagger 2.0,这可能会限制在响应中描述标头,这对我们的用例至关重要。它能够在不需要 swagger maven 插件所需的 @Api 或 @ApiOperation 注释的情况下获取其余服务。升级它以使用 swagger 2.0 可能是一项艰巨的任务。

Swagger Maven 插件:链接

该插件在构建时基于注释而不是注释创建 swagger 文档。这需要我们遍历整个项目并使用@Api 和@ApiOperation 进行注释。我们可能会避免一些仅在基类上的注释,但是对于端点的任何描述或标题,我们将需要在注释本身中添加详细信息。其中许多注解似乎是重复的,例如我们已经有了@Get 或@Post,但还需要添加@ApiOperation 并描述已经在javadoc 中描述的参数。缺点是这需要时间,并且还会导致看起来非常混乱的代码。

招摇核心:链接

Swagger 核心在运行时工作,这意味着我们无法从现有的 javadoc 中删除注释。它很容易扩展,就像 Swagger Maven 插件一样,我们可以添加自己的阅读器或规则来添加链接和元信息(或使用我们自己现有的注释)。缺点是每个方法的描述都需要来自某个地方,因此必须在(更多)注释中添加这些注释,这些注释在添加新代码时可能会被遗忘。

发声:链接

Enunciate 对我们不起作用,因为我们需要能够在 .NET 上使用类似的框架,而且它也不支持 JDK 8(目前)。

到目前为止我的结论

到目前为止,swagger jaxrs doclet 是最接近我们想要的一切。主要问题是缺乏 swagger 2.0。我们需要能够相应地更新 swagger 版本,因为将一起记录的其他项目(不同语言)会这样做。对我们来说第二好的是 Swagger Maven 插件,就像使用自定义运行器一样,因为这是构建时间,应该可以以某种方式访问​​现有的 javadoc 注释并将它们添加到生成的 swagger 中 - 我们可能会侥幸逃脱一些注释在基类上,并使用我们的自定义阅读器从评论中提取其余的(例如描述)。最后,swagger 核心并不能真正满足我们的需求,因为我们需要更多的注释来复制现有的 javadoc。

由于更新 swagger doclet 以支持 swagger 2.0 所需的时间未知,我倾向于使用自定义阅读器的 swagger maven 插件(有关如何从中读取 javadoc 注释的任何提示都会很有用!)。是否有任何我遗漏的框架或细节使我的结论不准确?

0 投票
0 回答
84 浏览

spring-mvc - Swagger UI 总是返回错误代码

我正在将 swagger API 与 spring mvc REST 集成。当我尝试在 swagger UI 中加载 json 数据时,当我看到我的方法时,总是会收到错误代码。它应该返回带有要更改的类型的有效输出。

我无法弄清楚这里发生了什么,我是否错过了配置中的某些内容?我正在使用芒果工厂

0 投票
1 回答
327 浏览

spring - Swagger 实现 Spring Web MVC 不显示模型架构

我正在尝试使用 Swagger 实现 Spring Web MVC,但问题是我无法获取模型模式。我附上了带有问题的代码,这个问题受到了打击。我正在关注以下链接:

http://raibledesigns.com/rd/entry/documenting_your_spring_api_with

问题是 Swagger UI 正在显示,但对于发布请求,它没有显示模型架构。

POM.XML:

春天.xml:

客户控制器.java:

应用属性:

0 投票
1 回答
1308 浏览

java - 在 CXF 中使用 swagger 生成离线文档

我正在尝试使用带有 cxf 和骆驼的 swagger 生成 REST 文档。我已经成功获得了招摇的文档。而且我的 swagger-ui 工作正常!

所以现在我正在尝试导出所有内容并构建离线文档。为了做到这一点,我使用:1)swagger-maven-plugin:REST -> json 2)swagger2markup-maven-plugin:json -> asciidoc

我设法得到一个 json 文件,但它不包含我的 api 文档..

pom.xml

Web.xml

应用程序上下文

我可以在以下位置访问 te swagger-ui 文档:http://localhost:8080/?url=http://localhost:8080/ws/jaxrs/swagger.json 该文档包含所有内容!

0 投票
0 回答
1430 浏览

gitlab - 将工件从 Gitlab CI 移动到项目 Wiki 页面

我正在设置 Gitlab CI 以根据 Swagger YAML 规范创建一个 asciidoc 页面。

为此,我设置了 Gitlab 来执行 swagger maven 插件并将结果保存到 public artifacts 文件夹,如下所示:

我的问题是如何将生成的 asciidoc 工件作为 wiki 页面自动上传到我的 Gitlab 项目中。我可以浏览公共工件文件夹,但 Gitlab 不会在其中呈现 .adoc 文件,它只提供下载它们。

更新。我发现了 Gitlab 问题 18106,这是一个“允许跑步者通过他们的 CI 令牌推送”的功能请求。我认为此功能将是我问题的答案,或者有人有更好的主意吗?

0 投票
0 回答
177 浏览

java - 在 Java 中使用 swagger-maven-plugin 仅生成我实际需要的参数属性

我想为 swagger maven 插件注释我的请求方法,以便在 swagger 请求参数模式中只显示我实际需要的属性,而不是类的所有属性。例如,如果我有一个带有电子邮件和物理地址的人员类,我只需要指定发送普通邮件的物理地址,反之亦然,但生成的招摇会同时显示两个调用。

例子:

示例人员类:

我需要注释的资源类:

(略)产生的招摇:

(缩写)想要的招摇:

区别在于请求模式引用和模式。

0 投票
1 回答
95 浏览

java - 为什么 swagger-maven-plugin 将我的输出更改为“application/xhtml+xml”?

我是 swagger-maven-plugin 的新手,我将它添加到 pom.xml,生成了 swagger.json 但我所有的 REST api 都不再工作了

我发现在响应头中“内容类型”更改为 application/xhtml+xml 并且所有以前返回的 json 数据现在都变成了 xml

之前

谁能帮忙?我是不是配置错了什么?

我正在使用版本 3.1.4

0 投票
1 回答
3993 浏览

java - 未生成 swagger maven 插件文档

我正在尝试使用Swagger maven 插件生成 swagger 文档

但是什么都没有创建,这是我输入的详细插件:

它没有创建任何文档。然后我尝试了kongchen swagger maven插件

插入:

依赖:

仍然没有生成文档。我哪里做错了?请帮我。谢谢。