Quarkus 1.10 发布 - 默认 JSON,多个响应式数据源,新的 Micrometer 注册表...

刚刚发布的 Quarkus 1.10.2.Final 带来了很多改进和新功能

  • 默认媒体类型现在是 JSON

  • CodeStarts 现在是默认的项目生成工具

  • Micrometer 扩展获得了相当多的改进(例如,新的注册表)

  • 新的 Qute 错误页面

  • Swagger/GraphQL/Health/OpenAPI 用户界面和 Swagger UI 配置

  • Hibernate ORM 配置的一部分现在可以在运行时覆盖

  • SmallRye Reactive Messaging 2.5.0 和 Mutiny 0.11.0

  • 响应式 SQL 客户端支持多个数据源

  • 新的 Amazon IAM 扩展

  • 部署到 Google Cloud 的新指南

像往常一样,它也带来了一些错误修复以及可用性和文档改进。

迁移指南

渴望迁移您现有的应用程序?这是 我们的 1.10 迁移指南

GraalVM 20.2 的 Java 11 版本仍然是推荐的 GraalVM 版本。

我的 1.10.0.Final(以及我的 1.10.1.Final)在哪里?!

我们发现了 Caffeine 扩展中的一个回归,并决定完全跳过 1.10.0.Final 的发布。然后我们发现了平台 BOM 的一个问题,不得不发布 1.10.2.Final。

总而言之,我们设法在此期间修复了更多问题,因此 1.10.2.Final 是一个更重要的版本。

有什么新功能?

JSON 作为默认内容类型

为了使您的 REST 资源不那么冗长,并考虑到如今 JSON 是 REST 服务中使用最广泛的内容类型,它现在是 Quarkus 中 REST 资源的默认设置。

这意味着,如果您正在使用 JSON,则不再需要添加 @Produces@Consumes 注释。

这也意味着,如果您依赖内容类型协商,您将必须添加这些带有您支持的内容类型的注释。

CodeStarts 作为默认项目生成工具

CodeStarts 项目是一个长期而稳定的努力。好消息:它现在是默认的项目生成工具。

从最终用户的角度来看,它带来了更好的用户界面、更高的灵活性和代码示例。

Micrometer 注册表

添加了两个新的注册表

  • StatsD

  • SignalFX

我们还添加了更多指标。

Swagger/GraphQL/Health/OpenAPI 用户界面

为了使 Swagger/GraphQL/Health/OpenAPI 用户界面保持一致并以 Quarkus 为主题,已经做了大量工作。

您现在也可以在运行时禁用它们。

更具体地说,在 Swagger UI 方面,所有 Swagger UI 配置旋钮都已公开为 Quarkus 配置属性。您可以在刚刚发布的 Stylish API 博客文章中了解更多信息。

Qute 错误页面

如果您正在使用 Qute(我们的模板引擎),您会很高兴看到我们闪亮的新错误页面,它会指出错误并使您更高效

qute error page

Hibernate ORM 运行时配置

在 1.10 之前,所有 Hibernate ORM 配置属性都在构建时修复。主要是为了优化目的。

在 1.10 中,我们开始放宽一些精心挑选的属性的此规则,您现在可以在运行时覆盖以下属性

  • quarkus.hibernate-orm.database.generation

  • quarkus.hibernate-orm.database.generation.create-schemas

  • quarkus.hibernate-orm.database.generation.halt-on-error

  • quarkus.hibernate-orm.log.sql

  • quarkus.hibernate-orm.log.format-sql

更多响应式更改

SmallRye Reactive Messaging 已升级到 2.5.0,其中包括多项改进,Mutiny 已升级到 0.11.0。

响应式 SQL 客户端现在支持多个数据源:您可以连接到多个数据库,就像 JDBC 数据源一样。

Amazon IAM 的新扩展

Amazon Services 扩展获得了一个新朋友:一个全新的 Amazon IAM 扩展。

有关此问题的更多信息,请参见Amazon IAM 指南

Google Cloud

许多与 Google Cloud 相关的工作都在 Quarkiverse 中进行。

如果您想知道如何将 Quarkus 应用程序部署到 Google Cloud,我们为您准备了一个新指南

其他更改

  • Hibernate ORM 已升级到 5.4.24.Final

完整变更日志

您可以在 GitHub 上获得 1.10.0.CR11.10.0.Final1.10.1.Final1.10.2.Final 的完整变更日志。

ADOPTERS.md

为了分享有关 Quarkus 用法的故事,我们在存储库的根目录中添加了一个 ADOPTERS.md 文件

如果您正在使用 Quarkus 并希望在我们的博客上接受采访或只是添加到此文件中,请与我们联系,我们很乐意效劳。

贡献者

Quarkus 社区正在发展,现在有 395 位贡献者。非常感谢每一位。

特别是对于 1.10 版本,感谢 Alexey Loubyansky、Andrea Cosentino、Andreas Eberle、Andrej Petras、Andrew Hatch、Andy Damevin、Anton Fagerberg、Antonio Goncalves、antonwiens、Arne Mejlholm、Auri Munoz、Bill Burke、Bobby Alex Philip、Bobby Philip、Cem Nura、Clement Escoffier、Daniel Platz、David M. Lloyd、Denis Fuenzalida、Dheeraj Nalluri、Dmitry Telegin、Dominik Henneke、Dušan Križan、Erin Schnabel、Falko Modler、Felix Wong、Foivos Zakkak、George Andrinopoulos、George Gastaldi、Georgios Andrianakis、ghokun、Guillaume Le Floch、Guillaume Smet、Gwenneg Lepage、Gytis Trikleris、Ioannis Canellos、Jack Hu、Jaikiran Pai、Jakub Antosik、Jan Martiška、Jordi Sola、Julien Ponge、Justin Holmes、Justin Lee、jyemin、jzuriaga、Jérôme TAMA、Jörg von Frantzius、kdnakt、Kevin Viet、Knut Wannheden、Kuba Antosik、Ladislav Thon、Libor Krzyzanek、Lovekesh Garg、Loïc Mathieu、luneo7、Maciej Swiderski、Manyanda Chitimbo、Marcin Czeczko、Martin Kouba、Matej Novotny、Matej Vasek、Matthias Harter、Michal Szynkiewicz、Nathan Erwin、osaka-svg、Paul Kunysch、Pedro Igor、Peter Palaga、Phillip Kruger、René Grob、Robbie Gemmell、Roberto Cortez、Rostislav Svoboda、Samuel Le Berrigaud、Sanne Grinovero、seregamorph、Sergey Beryozkin、Simon Bengtsson、Stefan Hacker、Stephane Epardaud、Stuart Douglas、Thorasine、Vincent Sevel、Vincent Sourin、Vinod Anandan、xstefank、Xumk、Yoann Rodière。

加入我们

我们非常重视您的反馈,所以请报告错误,提出改进建议…… 让我们一起构建伟大的东西!

如果您是 Quarkus 用户或只是好奇,请不要害羞,加入我们热情的社区