Oracle JavaリリースのパブリックAPI
JMSは、2019年7月以降のCPUから、すべてのOracle Javaパブリック・リリースに関する情報にアクセスするためのAPIを提供します。これらのRESTful APIは、重要なJavaリリース・データへのアクセスを提供し、システム管理者がJavaリリース情報を業務ワークフローにシームレスに統合できるようにします。
APIは、java.oraclecloud.com
ドメインを介してアクセスでき、認証または認可なしで使用できます。また、JMS Javaダウンロードを介して必要なJavaバージョンをダウンロードするためのスクリプト・フレンドリ・ダウンロード・コマンドも用意されています。
Java REST API
Oracle Javaパブリック・リリースに関する包括的な情報を提供する次のAPIを使用できます。APIごとに、特定の情報をフィルタ処理するために使用できる入力パラメータがあります。
Javaバージョン
JavaバージョンAPI - https://java.oraclecloud.com/javaVersions: Oracle Javaバージョンのリストを取得します。各Javaバージョンについて、このAPIには次の情報が表示されます:
docUrl
: ドキュメントURLを提供します。endOfSupportLifeDate
: Javaリリースのサポート終了日を指定します。jdkVersion
: JDKのバージョン番号を指定します。isSupportedVersion
: JDKバージョンがサポートされているかどうかを示します。値はTrueまたはFalseです。latestReleaseVersion
: JDKリリースの最新バージョン番号を指定します。isLts
: リリースが長期サポート(LTS)かどうかを示します。値はTrueまたはFalseです。
入力パラメータ
jdkVersion
(文字列): 8、11、17、21などのメジャーJavaバージョンで結果をフィルタしますisSupportedVersion
(ブール): Oracleサポート・ステータスで結果をフィルタします。指定できる値:<true>
isLts
(ブール): 長期サポート・ステータスで結果をフィルタします。指定できる値は<true or false>
ですsortBy
(文字列): 結果をjdkVersion
(デフォルト値)またはendOfSupportLifeDate
でソートします。sortOrder
(文字列): 結果をDESC
(デフォルト値)またはASC
でソートします。
Javaリリース
artifactContentTypes
: Javaリリースがセキュリティ・ベースラインの下にある最小日数や、スクリプト・ダウンロード・コマンドがJMS Javaダウンロード・ページから使用できるかどうかなどの詳細を提供します。jdkDetails
: Javaバージョンの詳細を示します。licenseDetails
: 表示名、ライセンス・タイプ、ライセンスURLなどの詳細を指定します。releaseDate
: 特定のJDKバージョンのリリース日を指定します。releaseNotesUrl
: JDKリリースのURLを表示します。releaseType
: CPU、FEATURE、PATCH_RELEASEなどのリリースのタイプを示します。releaseVersion
: 特定のJavaリリースのバージョン番号を指定します。releaseFullVersion
: 特定のJavaリリースのビルド番号(jdk-22.0.1+8
など)を含む完全なバージョンを提供します。securityStatus
: リリースのセキュリティ・ステータス(UP_TO_DATE
、UPDATE_REQUIRED
、UPGRADE_REQUIRED
、UNKNOWN
など)を示します。
入力パラメータ
jdkVersion
(文字列): 8、11、17、21などのメジャーJavaバージョンで結果をフィルタしますisSupportedVersion
(ブール): Oracleサポート・ステータスで結果をフィルタします。指定できる値:<true>
isLts
(ブール): 長期サポート・ステータスで結果をフィルタします。指定できる値は<true or false>
ですlicenseType
(文字列):OTN
やNFTC
などのライセンス・タイプで結果をフィルタしますreleaseType
(文字列):CPU
、FEATURE
、PATCH_RELEASE
などのリリース・タイプで結果をフィルタします。releaseVersion
(文字列): Javaリリース・バージョンによる結果のフィルタsecurityStatus
(文字列):UP_TO_DATE
、UPDATE_REQUIRED
、UPGRADE_REQUIRED
、UNKNOWN
などのセキュリティ・ステータスで結果をフィルタします。daysUnderSecurityBaseline
(整数): セキュリティ・ベースラインを下回る日数で結果をフィルタします。0日間は最新であることを示します。sortBy
(文字列): 結果をreleaseDate
(デフォルト値)、releaseVersion
、jdkVersion
またはlicenseType
でソートしますsortOrder
(文字列): 結果をDESC
(デフォルト値)またはASC
でソートします。
Java特定バージョンのリリース
Javaリリースの特定のバージョンAPI - https://java.oraclecloud.com/javaReleases/<$releaseVersion> (https://java.oraclecloud.com/javaReleases APIのreleaseVersion
値を使用して、そのリリースの詳細を表示します。たとえば、https://java.oraclecloud.com/javaReleases/11.0.17または https://java.oraclecloud.com/javaReleases/1.8.0_421です。
このAPIは、そのリリース・バージョンで使用可能なすべてのアーティファクトを含む、その特定のリリースに関する完全な情報を取得します。APIでは、Javaリリースごとに次のようなアーティファクト・プロパティが表示されます。
downloadFileSizeInBytes
: パッケージのファイル・サイズを指定します。artifactType
: JDK、JRE、SERVER_JREなどのアーティファクト・タイプを示します。osFamily
: Linux、Windows、macOSなどのアーティファクトの対応するオペレーティング・システムを示します。architecture
:aarch64
、x64
、sparcv9
、i586
、arm32
などのオペレーティング・システムのアーキテクチャを示します。packageType
:zip
、exe
、dmg
、deb
、rpm
、tar.gz
、msi
、tar.Z
など、サポートされているパッケージ・タイプを示します。downloadCommand
: JMS Javaダウンロード・ページからパッケージをダウンロードできるスクリプト・フレンドリ・ダウンロード・コマンドを提供します。シームレスにダウンロードできるように、正しいトークンIDを指定してください。downloadUrl
: JMS Javaダウンロード・ページからパッケージをダウンロードするために使用できるスクリプト・フレンドリなダウンロードURLを提供します。checksumCommand
: アーティファクトのチェックサムを取得するためのスクリプト・フレンドリなダウンロード・コマンドを提供します。checksumUrl
: 対応するチェックサムを含むダウンロードURLを提供します。
入力パラメータ
artifactType
(文字列): サポートされているアーティファクト・コンテンツ・タイプ(JDK
、JRE
、SERVER_JRE
など)でアーティファクトをフィルタしますosFamily
(文字列): サポートされているオペレーティング・システムによってアーティファクトをフィルタします(macOS
、Windows
、Linux
、Solaris
など)。architecture
(文字列): サポートされているオペレーティング・システム・アーキテクチャ(aarch64
、x64
、sparcv9
、i586
、arm32
など)でアーティファクトをフィルタします。packageType
(文字列): サポートされているアーティファクト・パッケージ・タイプ(zip
、exe
、dmg
、deb
、rpm
、tar.gz
、msi
、tar.Z
など)でアーティファクトをフィルタしますsortBy
(文字列): 結果をosFamily
(デフォルト値)、architecture
、artifactType
またはpackageType
でソートしますsortOrder
(文字列): 結果をDESC
またはASC
(デフォルト値)で順序付けします。
現在のJavaリリース
現在のJavaリリースAPI - https://java.oraclecloud.com/currentJavaReleases: 現在サポートされているOracle Javaリリース(CPU、機能およびパッチ・リリース)のリストを取得します。APIは、セキュリティ・ベースライン(UP_TO_DATE
に設定されたsecurityStatus
フィールド)に準拠するすべてのリリースをリストします。各Javaリリースについて、このAPIには次の情報が表示されます:
artifactContentTypes
: Javaリリースがセキュリティ・ベースラインの下にある最小日数や、スクリプト・ダウンロード・コマンドがJMS Javaダウンロード・ページから使用できるかどうかなどの詳細を提供します。jdkDetails
: Javaバージョンの詳細を示します。licenseDetails
: 表示名、ライセンス・タイプ、ライセンスURLなどの詳細を指定します。releaseDate
: 特定のJDKバージョンのリリース日を指定します。releaseNotesUrl
: JDKリリースのURLを表示します。releaseType
: CPU、FEATURE、PATCH_RELEASEなどのリリースのタイプを示します。releaseVersion
: 特定のJavaリリースのバージョン番号を指定します。releaseFullVersion
: 特定のJavaリリースのビルド番号(jdk-22.0.1+8
など)を含む完全なバージョンを提供します。securityStatus
: リリースのセキュリティ・ステータス(UP_TO_DATE
、UPDATE_REQUIRED
、UPGRADE_REQUIRED
、UNKNOWN
など)を示します。
入力パラメータ
jdkVersion
(文字列): 8、11、17、21などのメジャーJavaバージョンで結果をフィルタしますisSupportedVersion
(ブール): Oracleサポート・ステータスで結果をフィルタします。指定できる値:<true>
isLts
(ブール): 長期サポート・ステータスで結果をフィルタします。指定できる値は<true or false>
ですlicenseType
(文字列):OTN
やNFTC
などのライセンス・タイプで結果をフィルタしますreleaseType
(文字列):CPU
、FEATURE
、PATCH_RELEASE
などのリリース・タイプで結果をフィルタします。sortBy
(文字列): 結果をreleaseDate
(デフォルト値)、releaseVersion
、jdkVersion
またはlicenseType
でソートしますsortOrder
(文字列): 結果をDESC
(デフォルト値)またはASC
でソートします。
特定のJavaバージョンの現在のJavaリリース
現在のJavaリリースの特定のJavaバージョンAPI - https://java.oraclecloud.com/currentJavaReleases/<$jdkVersion>
: https://java.oraclecloud.com/javaVersions APIのjdkVersion
値を使用して、そのバージョンの詳細を表示します。たとえば、https://java.oraclecloud.com/currentJavaReleases/23です。
このAPIは、現在のJavaリリースの特定のバージョンに関する完全な情報を取得します。各Javaリリースについて、このAPIには次の情報が表示されます:
downloadFileSizeInBytes
: パッケージのファイル・サイズを指定します。artifactType
:JDK
、JRE
、SERVER_JRE
などのアーティファクト・タイプを示します。osFamily
: アーティファクトの対応するオペレーティング・システム(Linux
、Windows
、macOS
など)を示します。architecture
:aarch64
、x64
、sparcv9
、i586
、arm32
などのオペレーティング・システムのアーキテクチャを示します。packageType
:zip
、exe
、dmg
、deb
、rpm
、tar.gz
、msi
、tar.Z
など、サポートされているパッケージ・タイプを示します。downloadCommand
: JMS Javaダウンロード・ページからパッケージをダウンロードできるスクリプト・フレンドリ・ダウンロード・コマンドを提供します。シームレスにダウンロードできるように、正しいトークンIDを指定してください。downloadUrl
: JMS Javaダウンロード・ページからパッケージをダウンロードするために使用できるスクリプト・フレンドリなダウンロードURLを提供します。checksumCommand
: アーティファクトのチェックサムを取得するためのスクリプト・フレンドリなダウンロード・コマンドを提供します。checksumUrl
: 対応するチェックサムを含むダウンロードURLを提供します。
入力パラメータ
artifactType
(文字列): サポートされているアーティファクト・コンテンツ・タイプ(JDK
、JRE
、SERVER_JRE
など)でアーティファクトをフィルタしますosFamily
(文字列): サポートされているオペレーティング・システムによってアーティファクトをフィルタします(macOS
、Windows
、Linux
、Solaris
など)。architecture
(文字列): サポートされているオペレーティング・システム・アーキテクチャ(aarch64
、x64
、sparcv9
、i586
、arm32
など)でアーティファクトをフィルタします。packageType
(文字列): サポートされているアーティファクト・パッケージ・タイプ(zip
、exe
、dmg
、deb
、rpm
、tar.gz
、msi
、tar.Z
など)でアーティファクトをフィルタしますsortBy
(文字列): 結果をosFamily
(デフォルト値)、architecture
、artifactType
またはpackageType
でソートしますsortOrder
(文字列): 結果をDESC
またはASC
(デフォルト値)で順序付けします。
Java REST APIの使用
https://java.oraclecloud.com/javaReleases/11.0.17?osFamily=macos&architecture=aarch64
curl -H "token:<$token>" -L -O https://java.oraclecloud.com/java/11/latest/jdk-11_linux-aarch64_bin.tar.gz
checksumコマンドを使用して、パッケージの整合性を検証することもできます。