diff --git a/README.md b/README.md index 25fc319..2d27dca 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ JDKs built by Oracle are [Oracle JDK](https://www.oracle.com/java/technologies/d | Input Name | Default Value | Description | |-----------------------|--------------:|-----------------------------------------------------------------| | `website` | `oracle.com` | From where the JDK should be downloaded. | -| `release` | `24` | Java feature release number or name of an Early-Access project. | +| `release` | `25` | Java feature release number or name of an Early-Access project. | | `version` | `latest` | An explicit version of a Java release. | | `install` | `true` | Install the downloaded JDK archive file. | | `install-as-version` | _empty_ | Control the value passed as `java-version` | @@ -35,7 +35,7 @@ The following values are supported: ### Input `release` The `release` input denotes a Java feature release number (`21`, `22`, ...) or a name of an Early-Access project (`loom`, ...). -It defaults to the current General-Availability Release for the Java SE platform., which is `24` as of today. +It defaults to the current General-Availability Release for the Java SE platform., which is `25` as of today. Note that websites may offer a different set of available releases. For example, `oracle.com` only offers releases of `21` and above; it does not offer Early-Access releases. @@ -90,11 +90,11 @@ The following examples use the [JDK Script Friendly URLs](https://www.oracle.com ```yaml steps: - - name: 'Set up latest Oracle JDK 24' + - name: 'Set up latest Oracle JDK 25' uses: oracle-actions/setup-java@v1 with: website: oracle.com - release: 24 + release: 25 ``` ### Download and install a specific version of Oracle JDK diff --git a/action.yml b/action.yml index 334ed91..bd7055f 100644 --- a/action.yml +++ b/action.yml @@ -11,9 +11,9 @@ inputs: required: true default: 'oracle.com' release: - description: 'Feature release number or project name, defaults to `24`' + description: 'Feature release number or project name, defaults to `25`' required: true - default: '24' + default: '25' version: description: 'Additional version information, defaults to `latest`' required: true diff --git a/jdk.java.net-uri.properties b/jdk.java.net-uri.properties index 76a6e6f..0017dd4 100644 --- a/jdk.java.net-uri.properties +++ b/jdk.java.net-uri.properties @@ -1,9 +1,24 @@ # # General-Availability Release # +25,25,linux,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-aarch64_bin.tar.gz +25,25,linux,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-x64_bin.tar.gz +25,25,macos,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-aarch64_bin.tar.gz +25,25,macos,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-x64_bin.tar.gz +25,25,windows,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_windows-x64_bin.zip # # General-Availability Release (Alias) # +25,latest,linux,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-aarch64_bin.tar.gz +25,latest,linux,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-x64_bin.tar.gz +25,latest,macos,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-aarch64_bin.tar.gz +25,latest,macos,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-x64_bin.tar.gz +25,latest,windows,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_windows-x64_bin.zip +ga,latest,linux,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-aarch64_bin.tar.gz +ga,latest,linux,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-x64_bin.tar.gz +ga,latest,macos,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-aarch64_bin.tar.gz +ga,latest,macos,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-x64_bin.tar.gz +ga,latest,windows,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_windows-x64_bin.zip # # Early-Access Releases # @@ -17,11 +32,6 @@ 23,23-valhalla+1-90,macos,aarch64=https://download.java.net/java/early_access/valhalla/1/openjdk-23-valhalla+1-90_macos-aarch64_bin.tar.gz 23,23-valhalla+1-90,macos,x64=https://download.java.net/java/early_access/valhalla/1/openjdk-23-valhalla+1-90_macos-x64_bin.tar.gz 23,23-valhalla+1-90,windows,x64=https://download.java.net/java/early_access/valhalla/1/openjdk-23-valhalla+1-90_windows-x64_bin.zip -25,25,linux,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-aarch64_bin.tar.gz -25,25,linux,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-x64_bin.tar.gz -25,25,macos,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-aarch64_bin.tar.gz -25,25,macos,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-x64_bin.tar.gz -25,25,windows,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_windows-x64_bin.zip 25,25-loom+1-11,linux,aarch64=https://download.java.net/java/early_access/loom/1/openjdk-25-loom+1-11_linux-aarch64_bin.tar.gz 25,25-loom+1-11,linux,x64=https://download.java.net/java/early_access/loom/1/openjdk-25-loom+1-11_linux-x64_bin.tar.gz 25,25-loom+1-11,macos,aarch64=https://download.java.net/java/early_access/loom/1/openjdk-25-loom+1-11_macos-aarch64_bin.tar.gz @@ -38,11 +48,6 @@ # # Early-Access Releases (Alias) # -25,latest,linux,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-aarch64_bin.tar.gz -25,latest,linux,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-x64_bin.tar.gz -25,latest,macos,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-aarch64_bin.tar.gz -25,latest,macos,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-x64_bin.tar.gz -25,latest,windows,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_windows-x64_bin.zip 26,latest,linux,aarch64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_linux-aarch64_bin.tar.gz 26,latest,linux,x64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_linux-x64_bin.tar.gz 26,latest,macos,aarch64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_macos-aarch64_bin.tar.gz @@ -53,11 +58,11 @@ ea,latest,linux,x64=https://download.java.net/java/early_access/jdk26/15/GPL/ope ea,latest,macos,aarch64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_macos-aarch64_bin.tar.gz ea,latest,macos,x64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_macos-x64_bin.tar.gz ea,latest,windows,x64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_windows-x64_bin.zip -ea,stable,linux,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-aarch64_bin.tar.gz -ea,stable,linux,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-x64_bin.tar.gz -ea,stable,macos,aarch64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-aarch64_bin.tar.gz -ea,stable,macos,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-x64_bin.tar.gz -ea,stable,windows,x64=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_windows-x64_bin.zip +ea,stable,linux,aarch64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_linux-aarch64_bin.tar.gz +ea,stable,linux,x64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_linux-x64_bin.tar.gz +ea,stable,macos,aarch64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_macos-aarch64_bin.tar.gz +ea,stable,macos,x64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_macos-x64_bin.tar.gz +ea,stable,windows,x64=https://download.java.net/java/early_access/jdk26/15/GPL/openjdk-26-ea+15_windows-x64_bin.zip jextract,latest,linux,aarch64=https://download.java.net/java/early_access/jextract/22/6/openjdk-22-jextract+6-47_linux-aarch64_bin.tar.gz jextract,latest,linux,x64=https://download.java.net/java/early_access/jextract/22/6/openjdk-22-jextract+6-47_linux-x64_bin.tar.gz jextract,latest,macos,aarch64=https://download.java.net/java/early_access/jextract/22/6/openjdk-22-jextract+6-47_macos-aarch64_bin.tar.gz diff --git a/src/Download.java b/src/Download.java index 835efa1..8f463d3 100644 --- a/src/Download.java +++ b/src/Download.java @@ -465,7 +465,9 @@ public synchronized Optional findUri(JDK jdk) { return Optional.empty(); } } - return Optional.ofNullable(URI_MAPPING.getProperty(key)); + var value = URI_MAPPING.getProperty(key); + GitHub.debug("No URI mapped for " + key); + return Optional.ofNullable(value); } } } diff --git a/src/ListOpenJavaDevelopmentKits.java b/src/ListOpenJavaDevelopmentKits.java index db8687e..083bf13 100644 --- a/src/ListOpenJavaDevelopmentKits.java +++ b/src/ListOpenJavaDevelopmentKits.java @@ -40,19 +40,19 @@ class ListOpenJavaDevelopmentKits { /** Current General-Availability release number. */ - static final String GA = System.getProperty("GA", "24"); + static final String GA = System.getProperty("GA", "25"); /** Current Soon-Archived release number. */ static final String SA = System.getProperty("SA", ""); /** Early-Access Releases, as comma separated names. */ - static final String EA = System.getProperty("EA", "26,25,jextract,leyden,loom,valhalla"); + static final String EA = System.getProperty("EA", "26,jextract,leyden,loom,valhalla"); /** Current "latest" Early-Access Release number. */ static final String EA_LATEST = System.getProperty("EA_LATEST", "26"); /** Current "stable" Early-Access Release number. */ - static final String EA_STABLE = System.getProperty("EA_STABLE", "25"); + static final String EA_STABLE = System.getProperty("EA_STABLE", "26"); /** Include archived releases flag. */ static final boolean ARCHIVES = Boolean.getBoolean("ARCHIVES"); diff --git a/test/Test.java b/test/Test.java index 8f18c4e..971604f 100644 --- a/test/Test.java +++ b/test/Test.java @@ -29,11 +29,12 @@ public static void main(String[] args) { static void checkAllOracleJDKs() { System.out.println(); System.out.println("// oracle.com - latest"); - checkOracleJDK("24", "latest"); + checkOracleJDK("25", "latest"); checkOracleJDK("21", "latest"); System.out.println(); System.out.println("// oracle.com - archive"); + Stream.of("24", "24.0.1").forEach(version -> checkOracleJDK("24", version)); Stream.of("23", "23.0.1").forEach(version -> checkOracleJDK("23", version)); Stream.of("22", "22.0.1", "22.0.2").forEach(version -> checkOracleJDK("22", version)); Stream.of("21", "21.0.1", "21.0.2", "21.0.4").forEach(version -> checkOracleJDK("21", version)); @@ -74,12 +75,20 @@ static void checkJavaNetJDK(String release, String version) { } static void checkJDK(String website, Download.JDK jdk) { - var uri = Download.Website.find(website).orElseThrow().findUri(jdk).orElseThrow(); + System.out.println(website + " << " + jdk); + var finder = Download.Website.find(website).orElseThrow(); + var uri = finder.findUri(jdk).orElseThrow(); try { var head = BROWSER.head(uri); if (head.statusCode() < 200 || head.statusCode() >= 400) ERRORS.add(head.toString()); System.out.println(head); - System.out.println(" " + BROWSER.browse(uri + ".sha256")); + var sha = BROWSER.head(uri + ".sha256"); + System.out.println(sha); + if (sha.statusCode() >= 200 && sha.statusCode() < 400) { + System.out.println(" --> " + BROWSER.browse(uri + ".sha256")); + } else { + System.out.println(" --> "); + } } catch (Exception exception) { ERRORS.add(jdk + "\n" + exception); }