2021年7月19日の今週のJava総まとめでは、JDK 17、JDK 18、OpenJDK、Liberica JDK、GraalVM、MicroProfile 4.1、Quarkus 2.0.3、Hibernate、Spring Framework、JobRunr 3.4.0、RefactorFirst 0.1.0、Apache Tika 2.0.0、Kotlin 1.5.30-M1、Scala 3.0.1とScala 3.0.2-M1のニュースを取り上げる。
JDK 17
JDK 17早期アクセスビルドのビルド 32が先週利用可能になり、ビルド 31のさまざまな問題の修正とともに更新された。詳細については、リリースノートに記載されている。
JDK 18
JDK 18早期アクセスビルドのビルド 7も利用可能になり、ビルド 6のさまざまな問題の修正とともに更新された。詳細については、リリースノートに記載されている。
JDK 17とJDK 18の両方で、開発者はJava Bug Databaseを介してバグを報告することが奨励されている。
OpenJDK
Red HatのフリーのシニアJavaソフトウェアエンジニアであるAndrew Hughes氏は、2021年7月のセキュリティ修正とその他の多数の変更を特徴とするOpenJDK 11.0.12とOpenJDK 8u302のリリースを発表した。詳細については、バージョン 11.0.12およびバージョン 8u302のリリースノートに記載されている。以前リリースされたバージョン 16.0.2のリリースノートも利用可能だ。
Liberica JDK
BellSoftは、前述のOpenJDKリリースと同等のOpenJDKのダウンストリームディストリビューションであるLiberica JDKのバージョン 16.0.2、11.0.12、および8u302をリリースした。これらのリリースには、4のCVE、16のセキュリティ問題、501のバックポートとバグの修正が含む。
GraalVM
Oracle LabsはGraalVM 21.2をリリースし、native image ユーティリティによる多くのユーザビリティの改善、コンパイラの更新、Python、Ruby、JavaScriptなどの他のサポートされている言語の改善を行った。InfoQは、より詳細なニュース記事をフォローアップする。
MicroProfile
MicroProfile Working Groupは、MicroProfile Health 3.1 APIのアップデートが特徴のMicroProfile 4.1をリリースした。Healthの新機能は次のとおり。MicroProfile親POMへの統合。@Startup
ヘルスチェックグループと /health/started
エンドポイントを追加することによる新しいStartup Kubernetesプローブのサポート。また、デフォルトが DOWN
であるプロパティ mp.health.default.readiness.empty.response
は、ユーザの準備チェックが処理される前にのみ使用されることを明確にした。
2021年の第4四半期に予定されているMicroProfile 5.0の次のリリースの作業をすでに進めている、開発者は次の8の自家製APIの更新を予想している: Config、Metrics、Health、Fault Tolerance、JWT Propagation、Rest Client、Open TracingとOpen API。
Quarkus
Red HatはQuarkus 2.0の3番目のメンテナンスリリースであるQuarkus 2.0.3をリリースした。特徴は、次の通り: バグ修正。ドキュメントの改善。依存関係のHibernate ORM 5.5.4.Finalおよび一部のSmallRyeコンポーネントのアップグレード。@BeforeAll
アノテーションが失敗を報告しない継続的テストの問題の修正。ライブリロードでRedisが機能しなくなる問題の修正。詳細は変更ログに記載されており、Quarkus 2.0へのアップグレードを希望する開発者向けに移行ガイドが用意されている。
Hibernate
Hibernate ORM 5.5.4.Finalは、すべてのドットをアンダースコアに置き換え、すべてのキャメルケースをアンダースコアに置き換え、すべてのテーブル名を小文字で生成する新しい CamelCaseToUnderscoresNamingStrategy
クラスを備えてリリースされた。これは、Springの SpringPhysicalNamingStrategy
クラスの人気に応えて作成された。その他の新機能は次のとおり: 登録されていない場合に BeanContainer
インターフェースから IdentifierGenerator
インターフェース定義を取得するHibernateの機能。JDK 18早期アクセスビルドでのテスト実行。
Hibernate Search 6.0.6.Finalがリリースされ、非ASCII文字を含むペイロードが関係する特定のケースでAWSリクエスト署名による誤った署名が生成されることがないようにバグ修正が行われた。
Spring Framework
Spring Security 5.6.0-M1の最初のマイルストーンリリースは、次の機能を備えて利用可能になった: メソッドセキュリティのための AuthorizationManager
インターフェイス。OAuth2AccessTokenResponse
クラスのすべてのデータ型のサポート。Spring Securityサンプルの個別のリポジトリ。詳細については、リリースノートに記載されている。
Spring Bootバージョン 2.5.3とバージョン 2.4.9のマイナーポイントリリースには、それぞれ58のバグ修正と35のバグ修正が含まれており、両方のバージョンで依存関係のアップグレードとドキュメントの改善が含まれている。
Spring Boot 2.6.0への道のりで、120のバグ修正、ドキュメントの改善、依存関係のアップグレードを特徴とする最初のマイルストーンリリースが利用可能になった。新機能は次のとおり: Spring Data Enversの自動構成。メトリックサポートの改善。自動構成されたSpring Web Serviceサーバのテスト。MavenプラグインのStart Goal構成の改善。詳細については、リリースノートに記載されている。
JobRunr
Bringmeのアプリケーション開発者でJobRunrの作者であるRonald Dehuysser氏は、最新バージョンのJobRunrがJDK 17早期アクセスビルドのビルド 31で正常にコンパイルされることを発表した。2020年4月に最初にリリースされたJobRunrは、JVMでバックグラウンド処理を実行するためのライブラリだ。
RefactorFirst
トレーニング、コンサルティング、リクルート、プロジェクトサービスを提供するITサービス企業であるImprovingのプリンシパルソフトウェアコンサルタントであるJim Bethancourt氏は、MavenのRefactorFirstプラグインの初期リリースバージョン 0.1.0を発表した。この新しいツールは、アプリケーション内のどのクラスを最初にリファクタリングする必要があるかを特定するのに役立つ。Gradle用に同等のプラグインを導入する計画がある。
Apache Tika
Apache Tikaは、メタデータ抽出ツールキットのバージョン 2.0.0をリリースした。以前はApache Luceneのサブプロジェクトだったが、この最新バージョンでは、Apache Tika 1.xブランチの大幅なリファクタリング、Parser
モジュールのモジュール化、Pipes
モジュール内の新しいモジュール、多数のバグ修正、依存関係のアップグレードが含む。詳細については、リリースノートに記載されている。InfoQは、より詳細なニュース記事をフォローアップする。
Kotlin
Kotlin 1.5.20のリリースから1か月も経たないうちに、JetBrainsはKotlin 1.5.30の最初のマイルストーンバージョンを発表した。これには、次のような新機能のプレビューが含まれる: Rosetta Translation Environmentの必要性を排除するためのネイティブApple Siliconサポート。Gradleプラグインの新しいDSL形式でCocoaPods 構成の改善。JavaScriptソースマップを生成することにより、新しいIRバックエンドを使用してKotlin/JSアプリケーションのデバッグ改善。開発者はバージョン 1.5.30-M1をインストールして、これらの新機能を試すことができる。
Scala
Scala 3.0のGAリリースの直後に、メンテナンスリリース 3.0.1および3.0.2-RC1が利用可能になった。これは、定義を実験的なものとして明示的にマークする新しい @experimental
アノテーション、kind-projector
モードでの互換性の向上、エラーメッセージの改善、バグの修正などを備えている。バージョン 3.0.2の安定版リリースは、9月上旬に予定されている。