2022年3月21日、今週のJavaラウンドアップは、JDK 18、JDK 19、JDK Mission Control 8.2、Amazon Corretto 18、BellSoft LibericaJDK 18、Springの一連のマイルストンリリースとポイントリリース、Miconaut 3.4.0、GraalVM Native Build Tools 0.9.11、WildFly 26 Beta 1、Hibernate Reactive 1.1.4.Final、MicroStream 7.0-M1、JReleaser 1.0-RC1、TotnadoVM 0.13、といったニュースをお届けする。
JDK 18
Oracleは今週、Javaプログラミング言語と仮想マシンのバージョン18を、9つのJEPの最終仕様を含めてリリースした。詳細はこちらのInfoQニュースストーリで紹介している。
JDK 19
JDK 19 早期アクセスビルドのBuild 15が先週公開された。Build 14に対して、さまざまなイシューの修正を含むアップデートが施されている。詳細はリリースノートを確認して頂きたい。
JDK 19に関しては、開発者からのバグ報告をJava Bug Database経由で募っている。
JDK Mission Control
JDK Mission Control (JMC) 8.2.0がリリースされた。Eclipse 2021-06以降をサポートし、Apple ARM用バイナリビルドによってApple M1上でもネイティブに動作するようになった。その他では、async
プロファイラによって生成されたフレームタイプのサポート、system.gc()
の明示的起動に関する新ルールなどがフィーチャーされている。実行時はJDK 11以降が必要だが、OpenJDK 8u272以降、およびOracle JDK 7u40+以降で記録されたJFRの解析にも引き続き使用可能である。
Amazon Corretto
Amazonは、OpenJDK 18のダウンストリームディストリビューションであるAmazon Corretto 18をリリースした。Linux、Windows、macOS上で動作する。最新バージョンはこちらのサイトからダウンロード可能だ。
BellSoft Liberica JDK
同じくBellsoftも、JDK 18のダウンストリームディストリビューションであるLibericJDK 18をリリースした。最新バージョンはこちらのサイトからダウンロード可能だ。
Spring Framework
2週間の平穏な期間を過ごしたSpringチームだが、今週は一転して、数々のマイルストンリリースやポイントリリースで多忙を極めることになった。
Spring Bootは複数のリリースを実施している。バージョン2.5.11と2.6.5では、それぞれ総数56件と66件のバグ修正、依存関係のアップデート、ドキュメントの改善などが実施されている。
Spring Boot 2.7.0-M3には、新機能としてPodmanによるDockerイメージ生成のサポート>SanitizingFunction
インターフェースのサポート強化、Spring GraphQL 1.0.0-M6のサポートなどが含まれている。詳細は<a3>リリースノート</a3>に記載がある。
Spring Boot 3.0.0-M2の新機能は、Ehache 3およびH2 ConsoleアプリケーションのサポートがJakarta EE 9対応機能として復活、@ConstructorBinding
アノテーションと@ConfigurationProperties
アノテーションの混用に対する検出機能の改善などである。詳細はリリースノートを参照して頂きたい。
Spring Dataに関しても、先週は複数のリリースが公開された。ポイントリリースである2021.1.3と2020.0.10では、バグ修正と依存関係のアップグレードが提供されており、それぞれSpring Bootバージョン2.6.5と2.5.11での使用が可能である。
Spring Data 2021.2.0-M4(コードネーム"Raj")には、Spring Dataサブプロジェクトに関連する多数の新機能が含まれており、Spring Boot 2.7.0-M3での採用が予定されている。
Spring Data 2022.0.0-M3(コードネーム"Turing")にも新機能として、ベースラインのJDK 17への変更、Spring Framework 6およびJakarta EE 9のサポートなどが含まれている。このバージョンはSpring Boot 3.0.0-M2で使用される予定である。
Spring for GraphQL 1.0の6番目のマイルストンリリースが公開された。新しいGraphQL Clientと、それに合わせてアップグレードされたGraphQL Testerが同梱される。マイルストンリリースはこれが最後となり、2022年4月末にリリース候補(RC)が、2022年5月17日に一般提供(GA)リリースが、それぞれ予定されている。
Spring Security 6.0.0-M3と5.7.0-M3がリリースされた。WebSecurityConfigurerAdapter
クラスの非推奨化、SAML 2.0とOAuth 2.0のサポート強化などが含まれる。
Spring Batch 5.0の2番目のマイルストンが公開された。バッチジョブのメトリクスとトレースの両方を提供するMicrometer 2.0のObservation APIが新たに追加された他、SAPが開発したインメモリで列指向のリレーショナルデータベース管理システムのHANAが、ジョブリポジトリ用のサポート対象データベースに加わった。詳細はchangelongに記載されている。
Spring Authorization Server 0.2.3がリリースされた。多数の新機能とバグ修正、依存関係のアップグレードが含まれている。詳細はリリースノートを参照して頂きたい。
Micronaut
Micronaut FoundationがMicronaut 3.4.0をリリースした。@Require
アノテーションを付加した他のBeanプロパティに対する条件付きロード機能や、コントローラにLocalizedMessageSource
インターフェースの実装を注入することで処理中のHTTPリクエストのローカライズメッセージを解決する機能が同梱される他、Micronaut Data MongoDBがMicronaut Data 3.3.0の一部となっている。詳細はchangelongに記載がある。
GraalVM Native Build Tools
バージョン1.0に向かって進むOracle Labsが、GraalVM Native Imageとの相互運用を実現するプラグインからなるGraalVMプロジェクトであるNative Build Toolsのバージョン 0.9.11をリリースした。この最新リリースでは、ネイティブテストで環境変数を使用する機能、GradleによるGraalVMネイティブコンフィギュレーションリポジトリの統合、GradleのjvmReachabilityMetadaraRepository
からmetadataRepository
への名称変更、Mavenテストで@arg
ファイルが使用されない問題の修正、などが提供されている。詳細はリリースノートを参照して頂きたい。
WildFly
WildFly 26.1の最初のベータリリースが公開された。JDBCストア経由で取り出されるレコード数を制限する機能、MicroProfile Configでルートコンフィギュレーションのソースディレクトリを指定する機能、キーストアCLIコマンドの機能強化などがフィーチャーされている。詳しいことはリリースノートに記載されている。
Hibernate
Hibernate Reactive 1.1.4.Finalがメンテナンスリリースとして公開された。いくつかのバグ修正の他、Hibernate ORMが5.6.7.Finalにアップグレードされている。詳細はchangelongに記載がある。
MicroStream
MicroStream 7.0の最初のベータリリースが公開された。MicroStream CDIエクステンション、slf4jを使用したコアモジュールのログ、ユーザフレンドリになったシリアライザAPIなどが含まれる。
JReleaser
バージョン1.0.0に向けて、JReleaserの最初のリリース候補(RC)と新たな早期アクセスリリースが、いずれも今週公開された。ファイルプロパティで通常の文字列値を受け入れ可能にする変更、BINARY
ディストリビューションでのユニバーサルバイナリのサポート、jpackage
コマンドを冗長(verbose)モードで実行する新オプション、
remoteBuild
プロパティにfalse
が設定されているとpackageSourceUrl
が失敗する問題の修正、などが注目点だ。
TornadoVM
support for extended intrinsics related to math operations.オープンソースソフトウェア技術企業のTornadoVMがバージョン0.13をリリースした。JDK 17およびGraal 21.3.0とのインテグレーション、デフォルトで使用可能なネイティブ関数、SPIR-V Backendに関するさまざまな改善、インストールスクリプトの改良、数学演算に関連する拡張組み込み関数のサポート、といった新機能や改善が含まれている。
マンチェスター大学のAdvanced Processor TechnologiesResearchGroupのリサーチアソシエイトであるJuan Fumero氏は、2020年3月のQCon Londonで、このTornadoVMを紹介し、InfoQの技術記事にも度々寄稿してくれている。