in arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/ArthurMojo.java [183:222]
private String buildDownloadUrl(final String graalPlatform) {
if (graalDownloadUrl.startsWith("https://api.sdkman.io/2/broker/download/java/")) {
return graalDownloadUrl
.replace("${graalVersion}", graalVersion)
.replace("${platform}", graalPlatform);
}
// else assume github
final String[] versionSegments = graalVersion.split("\\.");
final boolean versionIncludesJavaVersion = versionSegments[versionSegments.length - 1].startsWith("r");
final String graalSimpleVersion = versionIncludesJavaVersion ?
Stream.of(versionSegments).limit(versionSegments.length - 1).collect(joining(".")) :
graalVersion;
String graalJavaVersion = versionIncludesJavaVersion ?
versionSegments[versionSegments.length - 1].substring(1) :
System.getProperty("java.version", "1.8").startsWith("8") ? "8" : "11";
final String githubPlatform = graalPlatform.toLowerCase(ROOT).contains("win")
? "windows-amd64"
: (graalPlatform.toLowerCase(ROOT).contains("mac")
? "darwin-amd64"
: "linux-amd64");
// backward compat
String baseUrl = "auto".equals(graalDownloadUrl) ?
"https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${graalSimpleVersion}/graalvm-ce-java${graalJavaVersion}-${githubPlatform}-${graalSimpleVersion}.tar.gz" :
graalDownloadUrl;
if (graalVersion.endsWith("-graalce")) {
graalJavaVersion = graalVersion.substring(0, graalVersion.length() - "-graalce".length());
baseUrl = "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-" + graalJavaVersion + "/graalvm-community-jdk-" + graalJavaVersion + "_${githubPlatform2}_bin." +
(System.getProperty("os.name", "").contains("win") ? "zip" : "tar.gz");
} else if (graalVersion.endsWith("-graal-oracle")) {
graalJavaVersion = graalVersion.substring(0, graalVersion.length() - "-graal-oracle".length());
baseUrl = "https://download.oracle.com/graalvm/" + graalJavaVersion + "/latest/graalvm-jdk-" + graalJavaVersion + "_${githubPlatform2}_bin." +
(System.getProperty("os.name", "").contains("win") ? "zip" : "tar.gz");
}
return baseUrl
.replace("${graalSimpleVersion}", graalSimpleVersion)
.replace("${graalJavaVersion}", graalJavaVersion)
.replace("${githubPlatform}", githubPlatform)
.replace("${githubPlatform2}", githubPlatform.replace("amd64", "x64"));
}