程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了从 JAR 运行时无法在 Micronaut 应用程序中打开 Swagger UI大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决从 JAR 运行时无法在 Micronaut 应用程序中打开 Swagger UI?

开发过程中遇到从 JAR 运行时无法在 Micronaut 应用程序中打开 Swagger UI的问题如何解决?下面主要结合日常开发的经验,给出你关于从 JAR 运行时无法在 Micronaut 应用程序中打开 Swagger UI的解决方法建议,希望对你解决从 JAR 运行时无法在 Micronaut 应用程序中打开 Swagger UI有所启发或帮助;

我有一个 Micronaut 应用程序,我想使用 Swagger 来显示 API 的文档。此链接 OpenAPI/Swagger Support 说明启用 Swagger UI 必须完成的所有更改。为了添加系统属性,我添加了 Gradle for Java 部分中给出的脚本。但问题是,当我从 IntelliJ IDEA 运行应用程序时,我能够访问 UI 页面,但是当我将项目组合成一个 JAR 文件(并使用 java -jar filename.jar 运行它)时,它不会显示任何输出。但在这两种情况下,我都能够通过 8080:swagger/application-name-1.0.yml 访问 swagger 的 yml 文件。

进一步检查,我发现当我通过 IntelliJ 运行它时,swagger UI 正在发起对 yml 文件的请求(并且出现两行响应代码为 200),此后将在刷新时返回 304,但 UI 页面会加载。但是当我运行 jar 文件时,我只会看到一个 swagger UI 的响应,它不会启动对 yml 文件的请求,因此屏幕保持空白。

重要的是我没有在 application.yml 文件中添加路由器和拦截 url 映射。并且有用于启用视图的 JVM fork 和 compile 选项。

当从 JAR 文件启动 Micronaut 应用程序时,我应该怎么做才能访问 Swagger UI。

解决方法

我创建了一个简单的 Micronaut 项目来测试它并且它可以工作。您可以克隆此存储库 https://github.com/dcalap/my-openapi-app 以使用它。

在 README 中有一个 gif,展示了 jar 如何为 Swagger UI 提供服务。

大佬总结

以上是大佬教程为你收集整理的从 JAR 运行时无法在 Micronaut 应用程序中打开 Swagger UI全部内容,希望文章能够帮你解决从 JAR 运行时无法在 Micronaut 应用程序中打开 Swagger UI所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。