今週2021年8月2日のJava総まとめでは、OpenJDK、JDK 17の初期リリース候補、JDK 18、Spring Cloud 2021.0.0-M1、Quarkus 2.1.1、Open Liberty 21.0.0.8、WildFly 24.0.1 S2I Dockerイメージ、Hibernate ORM 5.5.6、JReleaser 0.6.0、Apache Camel 3.11.1、オープンソースになったMicroStream 5からのニュースを特集する。
OpenJDK
JEP 416、Reimplement Core Reflection with Method Handles (メソッドハンドルによるコアリフレクションの再実装) は、ドラフトから候補ステータスに昇格した。このJEPは、java.lang.invoke
で定義されたメソッドハンドル上に、java.lang.reflect
クラス、Method
、Constructor<T>
および Field
を再実装することを提案している。これらのメソッドハンドルは、両方のパッケージのメンテナンスと開発コストを削減するためのリフレクションのメカニズムとして機能する。
JDK 17
JDK 17は先週初期リリース候補フェーズに入った。JDKリリースプロセスに従って、JDK 17安定化リポジトリは重大なバグ修正のためにのみ開かれている。このフェーズは今後2週間有効になる。
JDK 17リリース候補ビルドはビルド 35が先週利用可能になり、ビルド 34からさまざまな問題の修正を含む更新があった。詳細についてはリリースノートに記載されている。
InfoQは先頃、2021年9月14日に予定されている次のLTSリリースの包括的な分析を提供した。
JDK 18
JDK 18早期アクセスビルドのビルド 9も利用可能になった。ビルド 8からさまざまな問題の修正を含む更新があった。詳細についてはリリースノートに記載されている。
JDK 17とJDK 18の両方について、開発者はJava Bug Databaseを介したバグ報告を募集している。
Spring Framework
Spring Cloud 2021.0.0の最初のマイルストーンリリースがJavaコミュニティで利用できるようになった。コードネーム Jubileeのこのリリースは、Spring Boot 2.6.0-M1と互換性があり、Spring CloudのサブプロジェクトGateway、Sleuth、OpenFeign、Kubernetes、Task、ConfigやContractに対する多くの更新がある。詳細についてはリリースノートに記載されている。
Quarkus
Quarkus 2.1のリリースから1週間も経たないうちに、Red HatはメンテナンスリリースQuarkus 2.1.1.Finalを提供した。JaCoCoとKeycloakの問題を修正し、elasticsearch-rest-high-level-client
と mongodb-client
拡張機能を追加した。詳細については変更ログに記載されている。
Open Liberty
IBMは、IBMが直接ホストしているOpenJ9 Javaビルドの新しいホームであるIBM Semeru Runtimesを導入したベータリリースをOpen Liberty 21.0.0.8に昇格した。
Open Liberty 21.0.0.9-betaがリリースされた。新しいメソッド、isActive()
は、エンドポイントが存在するか、開始されているか、一時停止されていないかを判断するため ServerEndpointControlMBean
インターフェイスに追加されたことが特徴だ。
WildFly
WildFly 24.0.1 Source-to-Image (S2I) Dockerイメージが quay.io でリリースされた。これは、コンテナイメージを構築、分析、および配布するRed Hatのユーティリティだ。これら新しいS2IイメージはWildFlyのHelm Chartに追加されており、MicroProfileを使用したサンプルアプリケーションはGitHubにある。
Hibernate
Hibernateプロジェクト ORM と Reactive のポイントリリースが多数あり、Hibernateでは忙しい1週間でした。
Hibernate ORM バージョン 5.5.5.Final および 5.5.6.Final がリリースされ、再帰型変数定義のコンパイル時に hibernate-jpamodelgen
アノテーションプロセッサがメタモデルの生成に失敗することによって引き起こされるスタックオーバーフローエラーなどのバグ修正が行われた。
Hibernate ORM 6.0への道のりで、主な焦点は、ResultSet
インターフェイスへの呼び出しに影響を与える「read-by-name (名前による読み取り)」から「read-by-position (位置による読み取り)」に戦略を変更することにより、Hibernateのスループットパフォーマンスを向上させることだ。Alpha9リリースでは、これらの戦略の変更のほとんどが組み込まれ、関連して失敗したテストが修正されている。
Hibernate Reactive 1.0.0.CR9がリリースされ、Microsoft SQL Serverとの統合が行われた。
JReleaser
JReleaser 0.6.0が次の機能を追加してリリースされた: HomebrewとSDKMAN!を使用したパッケージの更新。JFrog ArtifactoryやHTTPなどのアップローダを使用してダウンロードURL変数を構成する機能。パッケージ化されたファイル (Dockerfile
+ サポートファイル) をユーザ定義のGitリポジトリに公開できるようにするDockerパッケージャ。詳細については変更ログに記載されている。
Apache Camel
最初のメンテナンスリリースのApache Camel 3.11.0のリリースからわずか1か月余りで、バージョン 3.11.1がApache Software Foundationによって利用可能になった。このリリースでは、Spring Boot 2.5.3、Camel Spring Boot 2.5.2、およびVert.x 4.1.1への依存関係のアップグレードが行われた。既知のエンタープライズ統合パターンに基づくオープンソースの統合フレームワークであるApache Camelは、50を超えるデータ形式をサポートしているため、開発者はデータをプロデュース (生産) およびコンシューム (消費) するシステムを統合できる。詳細についてはリリースノートに記載されている。
MicroStream Framework
MicroStreamは、Java永続化およびデータベースツールフレームワークのバージョン 5.0がオープンソースになったことを発表した。MicroStreamへの貢献に関心のある開発者は、新しいGitHubリポジトリにアクセスして始めることができる。InfoQは、より詳細なニュース記事でフォローアップする。