OSS探訪

OpenJDK JDK — Javaのコンパイラ・HotSpot VM・標準ライブラリを一つのmainlineで開発する中核リポジトリ

OSS健全度 91
スコアの見方

発掘スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした独自指標(上限なし)。成長モメンタムは観測期間内の同スコアの差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
23,347
主要言語
Java
ライセンス
GPL-2.0
リポジトリ最終更新
2026/09/15

概要

openjdk/jdkは、OpenJDKのJDK main-line developmentを行う公式リポジトリです。`src`配下にはHotSpot VM、`java.base`をはじめとするJava SEモジュール、compiler関連モジュールなどが並び、Javaの実行環境・標準ライブラリ・開発ツールをまとめて追えます。2026年9月15日時点のmasterはJDK 28 Early-Accessを対象としており、アプリ開発者が単にJDKをインストールする場所というより、次期Javaの実装を検証・改修・ビルドするための上流ソースです。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

HotSpot VM・Java SEモジュール・compilerを、同じソースツリーで追える

GitHub上のsrcツリーにはhotspotjava.basejava.compilerをはじめ多数のモジュールが含まれています。JVMだけ、標準ライブラリだけ、コンパイラだけを別々のプロジェクトとして見るのではなく、JDKとして一体で変更される境界を確認できるのがこのリポジトリの価値です。Java言語機能、GC/JIT、I/O・network・security・desktopなどの標準API、javacを含む開発ツールの実装を上流で追いたい場合の一次情報になります。

出典:[1][3]

configure → images → tier1 testまで、JDKそのものを再現可能なビルド手順が公開されている

公式build documentationは、source clone後にbash configuremake images、生成したjava -versionの確認、make test-tier1という最短手順を示しています。Linux・macOS・AIX・Windowsをmainlineの対象としており、WindowsではCygwin、MSYS2、WSLなどのPOSIX layerが必要です。JDKの内部変更を自分の環境でbuildし、最低限のtestまで回す導線が明示されています。

出典:[4]

masterがどのJDK世代を作っているかを、version設定から明示的に判定できる

make/conf/version-numbers.confでは、現在のmainlineがDEFAULT_VERSION_FEATURE=28DEFAULT_PROMOTED_VERSION_PRE=eaであることが定義され、予定日として2027-03-23、class file major version 72、acceptable boot JDKとして26・27・28が設定されています。したがって、このmasterを読むときは「現在配布中の安定版JDK」と同一視せず、JDK 28に向けたEarly-Accessの開発線として扱う必要があります。

出典:[5]

JDK内部の挙動検証、OpenJDKへの貢献、独自buildやdownstream patchを扱う開発者向け

GC/JITやclass library、compilerの挙動を実装レベルで確認したい場合、JDKのbug修正やJEP実装を追いたい場合、vendorや研究用途で独自JDK buildを作りたい場合に向きます。通常のWeb/業務アプリで「Javaを使いたい」だけなら、mainline sourceをbuildするより、用途に合うprebuilt JDK distributionや対象versionのupdate repositoryを利用する方が運用負荷は小さくなります。

mainline masterは安定版配布物ではない。保守対象のJDKでは対応するupdate repositoryを選ぶ

build documentationはjdkを「main-line currently in development」と位置づけ、JDK 17のような過去versionをbuildする場合は、GA時点で凍結されたjdk17ではなく更新を受け続けるjdk17uのようなJDK Updates repositoryを強く推奨しています。productionで特定JDKを保守する目的なら、masterを固定して使うのではなく、そのversionのupdate lineとdistribution方針を先に決める必要があります。

出典:[4][5]

buildは重量級で、boot JDK・native toolchain・disk/RAMまで含めた環境準備が必要

公式文書はJDKをcomplexかつmassiveなprojectとし、SSDを強く推奨しています。x86では最低でも2〜4 cores、2〜4 GB RAM、6 GB以上の空きdisk、AArch64では8 cores、8 GB RAM、6 GB以上のdiskを目安として示しています。さらに現在のJDK 28 mainlineではboot JDKとして26・27・28が許容されます。単一Java libraryのbuildと同じ感覚ではなく、native compilerやbuild toolsを含むtoolchain全体を管理する必要があります。

出典:[4][5]

ライセンスはGPL v2を基礎にClasspath Exceptionを含む。再配布・改変ではfile headerまで確認する

repository metadataはGPL-2.0として認識され、root LICENSEにはGPL version 2とClasspath Exceptionが収録されています。一方でExceptionは「certain source files」に適用されると記載されているため、JDKを改変して再配布する場合やsourceの一部を別製品へ取り込む場合は、単に「Classpath Exception付きだから問題ない」と一般化せず、対象fileのlicense headerとthird-party licenseを確認する必要があります。

出典:[6][5]

参考にした公式資料

  1. [1]openjdk/jdk — GitHub repository(2026-09-15)
  2. [2]openjdk/jdk — README(2026-09-15)
  3. [3]openjdk/jdk — src tree(2026-09-15)
  4. [4]OpenJDK — Building the JDK(2026-09-15)
  5. [5]openjdk/jdk — version-numbers.conf(2026-09-15)
  6. [6]openjdk/jdk — LICENSE(2026-09-15)
編集部からの補足

Javaを使うための配布JDKではなく、Javaそのものの次期実装を追う上流sourceとして選びました。2026年9月15日時点のmasterはJDK 28 EAで、production運用では対象versionのprebuilt distributionやjdkXXu系update repositoryと役割を分けて評価する必要があります。

3ステップで試す

  1. 1

    ソースを取得

    git clone --depth 1 https://github.com/openjdk/jdk.git
  2. 2

    リポジトリへ移動

    cd jdk
  3. 3

    公式手順を確認

    READMEのInstallation / Quick Start / Getting Startedにある公式コマンドを続けて実行してください。

    find . -maxdepth 1 -iname 'README*' -exec sed -n '1,220p' {} \; -quit
公式READMEで確認

成長

成長の推移 · 直近30日

23,347 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
459
Open PR
407

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • openjdk
  • java
  • jvm
Stars
23,347
Forks
6,445
Watchers
366
Open Issues
0
主要言語
Java
ライセンス
GPL-2.0
リポジトリ最終更新
2026/09/15
情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。