Jakarta EE に Core Profile というのが増えていた

いつの間にかCore Profileというのが増えていました。

Jakarta EE Core Profileは特に小規模なランタイムを対象としたJakartaEEプラットフォームのプロファイルを定義しています。 マイクロサービスや事前コンパイル(=GraalVM)に適したより小さなランタイムを対象としています。

プロジェクトページはこちら。

jakarta.ee

ここまでで、これはMicroProfileと何が違うんだ?という疑問にあたりまして、調べたところ会議体が違うだけで中の人もほぼ一緒なものであるという認識が出来ました。

MicroProfile自体はJava EE時代にJavaEEの仕様策定のプロセスが遅い事やリソースを十分に供給できていないということに危機感を感じたいくつかのベンダーとJavaコミュニティ主体で発生しました。そしてEclipse Fundationで管理されていくことになります。

しかしながら、そのあと紆余曲折があり、Java EE自体がEclipse Fundationで管理されるようになり、Jakarta EEと名前を変え、Oracle本体の呪縛から解き放たれ、会議体としては別ではあるものの、中の人はほぼ一緒であるという状態になってしまいました。

Core Profile側の参加メンバー(投票者の所属企業を参照)

MicroPrifle側の参加メンバー

両方に参加されているPayara*1の人はブログで、MicroProfileもJakarta EEの一部になってほしい旨を書いています。

MicroProfile and Jakarta EE Technical Alignment

現時点でも二つの仕様はほぼ同じもののようで、Devoxx UKにてCore ProfileのメンバーがMicroProfileを実装した製品について、Core Profileに適合するポテンシャルがありますと話されています。

Jakarta EE Core Profile - A Slimmer Jakarta EE by Ivar Grimstad - YouTube

仕様に表すと以下のような感じです。

f:id:megascus:20220413202844p:plain
Jakarta EE 10 Platform

https://mobile.twitter.com/Payara_Fish/status/1513502920939032582 より

f:id:megascus:20220413203001p:plain
MicroProfile

https://microprofile.io/projects/ より

ということで、私はてっきりCore Profileの方に統合されていくのかなー?と思っていたら、MicroProfile陣営もまだまだやる気のある人が居るらしくて、MicroProfile 6.0(Jakarta EE 10とAPI互換版)のリリースについても着々と進んでいるようです。

github.com

Core Profileだけに集約していくのか、両立していくのか不明なのですが、今後どうなっていくんでしょうかね?

*1:JavaJakarta EEの商用サーバーを開発している会社