JJUGナイトセミナー「JCP20周年記念/OpenJDKテイスティング」に行ってきた #jjug

JJUGナイトセミナー「JCP20周年記念/OpenJDKテイスティング」 に行ってきました。簡単に所感をまとめます。

jjug.doorkeeper.jp

所感

山田さんの資料はとても参考になります。ソムリエ的には Liberica 推しの模様。

個人的にはこれまでの観測範囲で AdoptOpenJDK 推しだったけど、「TCK/JCK が通っていないから受託開発で使うのはリスキー」というのは意識してませんでした。なるほど。

ユーザー目線で考えると、運用と使いやすさ(インストーラとか)を基準にして選ぶのがよいかもしれない。もちろんコストも大事だけど。

OCJP Gold 11 に向けて勉強しようかなー。

以下、メモから抜粋。

JCP20周年記念セッション

f:id:knt_mr:20190725233827j:plain

エクレアに刺さってた Duke はお持ち帰り。あと、20周年記念ステッカーとキーホルダーを GET しました。

これからのJDK/JVM何を選ぶ?どう選ぶ?

www.slideshare.net

  • マルチプラットフォームに対応する JDK に着目
    • いろいろな環境で動かすことがある
    • 種類やバージョンによる差異をなくす
  • JDK ディストリビューターが力を入れている
    • リリースが早い
    • Oracle がリリースしてから1週間くらいで出揃う
  • Linux distro に含まれる OpenJDK は古かったりパッケージ更新に依存する
  • 共有ランタイム から カスタムJRE (アプリ組み込み) へ
    • jlink, jpackage
  • OpenJDK の貢献/投資は Oracle が多い
    • アップデートは Red Hat が主導している
  • Liberica JDK
    • JavaFX/OpenJFX 統合
    • JetBrains や Oracle と提携関係?
  • AdoptOpenJDK
    • 5000万ダウンロード突破
  • GraalVM に対応した Web フレームワーク

パネルディスカッション: JDKトーク

独自機能を使うべきか/使わないべきか:

  • 利便性とのトレードオフ
    • アプリを限定的な範囲で公開するなら独自機能を使うのはありかも
  • 標準機能に入ってくると使いやすい
    • バックポートされるかどうか

開発環境/運用環境:

OS/ミドル/JDKの組み合わせ:

  • Elasticsearch は OS 標準の JDK を使うことを推奨している
  • 違いを認識しておく

政治的なこと:

  • AdoptOpenJDK が違う方向に行かないか不安...
  • TCK/JCK が通っていない AdoptOpenJDK を受託開発で使うのはリスキーかも?
    • 自社製品に組み込むのはよいが

どの JDK を選べばよいか:

  • Windows 環境なら
    • Zulu? (独自路線に行きそうで警戒している)
    • Red Hat Subscription を購入する?
    • サーバーサイドの場合、Oracle JDK はやや高い (特に仮想環境)
  • Java 8 はあと10年使われるのではないか...

Oracle OpenJDK の半年アップデートに追従: