Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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` |
Expand All @@ -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.
Expand Down Expand Up @@ -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
Expand Down
4 changes: 2 additions & 2 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
35 changes: 20 additions & 15 deletions jdk.java.net-uri.properties
Original file line number Diff line number Diff line change
@@ -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
#
Expand All @@ -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
Expand All @@ -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
Expand All @@ -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
Expand Down
4 changes: 3 additions & 1 deletion src/Download.java
Original file line number Diff line number Diff line change
Expand Up @@ -465,7 +465,9 @@ public synchronized Optional<String> 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);
}
}
}
6 changes: 3 additions & 3 deletions src/ListOpenJavaDevelopmentKits.java
Original file line number Diff line number Diff line change
Expand Up @@ -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");
Expand Down
15 changes: 12 additions & 3 deletions test/Test.java
Original file line number Diff line number Diff line change
Expand Up @@ -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));
Expand Down Expand Up @@ -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);
}
Expand Down
Loading