今週のJava総まとめでは、JDK 17、JDK 18、GraalVM Native Build Tools、TornadoVM 0.10、Quarkus 2.0およびApache Camel Quarkus 2.0のリリース、Apache Camel 3.11、Apache Wicket、Helidon、Micronaut Foundation、JReleaser 0.5.0、IntelliJ IDEA 2021.1.3、Gradle 7.1.1、Hibernate、Scala、ASM、およびSpring Frameworkからのニュースを取り上げる。
JDK 17
先週、さまざまな問題の修正を含むビルド 28からの更新が行われた、JDK 17早期アクセスビルドのビルド 29が利用可能になった。詳細については、リリースノートに記載されている。
JDK 18
JDK 18早期アクセスビルドは、さまざまな問題の修正を含むビルド 3からの更新が特徴のビルド 4も利用可能になった。現時点では、レビューできるリリースノートはない。
JDK 17とJDK 18の両方について、開発者はJava Bug Databaseを介してバグを報告することが奨励される。
GraalVM
Oracle Labsは、GraalVM Native Imageとの相互運用性のためのプラグインで構成されるGraalVMプロジェクトであるNative Build Toolsのバージョン 0.9.1をリリースした。このリリースでは、MavenおよびGradleプラグインに関連する問題の修正、Gradleプラグインのドキュメントの改善、およびJUnitサポートの改善が提供される。
TornadoVM
オープンソースのソフトウェアテクノロジー企業であるTornadoVMは、JDK 16の実験的サポートを特徴とするTornadoVMバージョン 0.10をリリースした。特徴は、スレッド分布をトレースするための新しい --threadInfo
オプション、GraalVM 21.1.0と同期されたTornadoVM JITコンパイラ、2Dアレイの初期サポートだ。
マンチェスター大学のAdvanced Processor Technologies Research GroupのリサーチアソシエイトであるJuan Fumero氏は、2020年3月にQCon LondonでTornadoVMを紹介し、それ以来、このInfoQ技術記事に寄稿している。
Dockerを使用するサンプルアプリケーションが、このGitHubリポジトリにある。
Quarkus 2.0
Red Hatは、GraalVM 21.1、Vert.x 4.0、およびMicroProfile 4.0をサポートするQuarkus 2.0をリリースした。JDK 11が最低限必要なバージョンになりますが、JDK 8はQuarkus 1.13リリーストレインで引き続きサポートされる。MicroProfile 4.0互換の実装であるSmallRyeのコンポーネントに大きな変更があった。
Quarkus 2.0は、コード変更中に継続的なフィードバックを提供する新しい継続的テスト機能も備えている。InfoQは先頃、RedHatのシニアプリンシパルエンジニアであるStuart Douglas氏と継続的テストの詳細について話し合った。InfoQは、Quarkus 2.0に関するより詳細なニュース記事もフォローアップする。
毎週のシリーズのQuarkus Insightsのエピソード 55は、Max Rydahl Andersen氏とQuarkus開発チームが主催するQuarkus 2.0ローンチパーティーを特集した。
Apache Camel Quarkus
Quarkusに関連して、ApacheはQuarkus 2.0にApache Camel 3.11、改善されたテスト、および13の新しい拡張機能を統合したCamel Quarkus 2.0.0をリリースした。InfoQは、より詳細なニュース記事でフォローアップする。
Apache Camel
Apache Software Foundationは、101の新機能、改善、バグ修正を備えたLTSリリースであるCamel 3.11をリリースした。既知のエンタープライズ統合パターンに基づくオープンソースの統合フレームワークであるApache Camelは、50を超えるデータ形式をサポートしているため、開発者はデータを生成および消費するシステムを統合できる。詳細については、リリースノートに記載されている。
Apache Wicket
オープンソースのコンポーネント指向のサーバサイドJava WebアプリケーションフレームワークであるApache Wicketは、x86_64とaarch64 LinuxのJDK 17-eaのビルド 28およびJDK 18-eaのビルド 3でビルドとテストに合格したことを発表した。
Helidon
Helidon 1.4および2.3リリーストレインのマイナーポイントリリースが先週利用可能になった。Helidon 1.4.9は、依存関係のアップグレードとバグ修正を特徴としている。Helidon 2.3.1は、WebServerおよびWebClientコンポーネントに関連するバグ修正、依存関係のアップグレード、および拡張機能を特徴としている。
Micronaut Foundation
Micronaut Foundationは、MicrosoftのJavaのプリンシパルプロダクトマネージャであるBruno Borges氏がTechnology Advisory Boardに加わったことを発表した。非営利団体であるMicronaut Foundationは、Micronautフレームワークの革新と採用を促進するために2020年6月に設立された。
JReleaser
JReleaser 0.5.0がリリースされ、新しいディストリビューションタイプなどのHomebrewパッケージャの改善が特徴だ: .dmg
、.pkg
、.deb
、.rpm
、.msi
、.exe
のタイプのアーティファクトを有効にする NATIVE_PACKAGE
、およびJava以外のディストリビューションを有効にする BINARY
だ。 Homebrewは、.dmg
および .pkg
のタイプのアーティファクトのキャスクの生成もサポートしている。詳細については、変更ログに記載されている。
IntelliJ IDEA
JetBrainsはIntelliJ IDEA 2021.1.3をリリースした。これには、UIフリーズの問題、Mavenプロジェクトの ソースのダウンロード メニューの呼び出し時に発生するエラー、無限にインデックス作成される問題など、多数の修正が含まれている。詳細については、リリースノートに記載されている。
Gradle
Gradle 7.1.1がリリースされ、Javaインクリメンタルコンパイラが改善され、Kotlinのソースセット構成が簡単になった。詳細については、リリースノートに記載されている。
Hibernate
Hibernate ORM 5.5.3.Finalがリリースされ、バグ修正と追加のパフォーマンス最適化が行われた。Hibernateは、新しい構成プロパティ hibernate.hbm2ddl.schema-generation.script.append
も導入した。これにより、開発者は、ファイルを上書きするのではなく、スキーマコマンドをファイルの末尾に追記するかどうかを指定できる。
Hibernate Search 6.0.5.Finalがリリースされ、Hibernate ORM 5.4.32への依存関係のアップグレードと、AWSでのクレデンシャルエラーの修正が行われた。
Scala
Scala 3.0のGAリリースのすぐ後に、コンパイラが予期せず失敗したこのプルリクエストによって引き起こされた問題に対処するために、Scala 3.0.1が2番目のリリース候補で利用可能になった。
ASM
独立したグローバルなオープンソースソフトウェアコミュニティであるOW2は、万能のJavaバイトコード操作および分析フレームワークであるASMのバージョン 9.2をリリースした。新機能には、JDK 18のサポート、ClassReader
クラスの readStream()
メソッドのパフォーマンス向上、バグ修正、ドキュメントの改善が含まれる。
Spring Framework
依存関係のアップグレードが特徴のSpring Cloud Data Flow 2.8.1がリリースされた。Paketoを使用したパッケージでバージョン 2.7.xにJDK 11が含まれ、このバージョンで誤ってJDK 8でパッケージ化されていることが判明した。したがって、JDK 8およびJDK 11のイメージの再作成が必要になった。
最近のSpring Securityポイントリリースのフォローアップとして、OAuth 2.0およびWebFlux認証リクエストを介したサービス拒否攻撃を文書化したCVEレポートが公開された。