Added an experimental JDK wrapper
This commit is contained in:
parent
b341e7cfa3
commit
504e1884fa
|
@ -6,6 +6,7 @@
|
||||||
/.project
|
/.project
|
||||||
|
|
||||||
# Ignore IDEA project files
|
# Ignore IDEA project files
|
||||||
|
/.idea
|
||||||
/*/.idea
|
/*/.idea
|
||||||
|
|
||||||
*.log
|
*.log
|
||||||
|
@ -16,4 +17,5 @@
|
||||||
.gradle
|
.gradle
|
||||||
|
|
||||||
# Ignore Gradle build output directory
|
# Ignore Gradle build output directory
|
||||||
build
|
/build
|
||||||
|
/*/build
|
29
build.gradle
29
build.gradle
|
@ -1,5 +1,15 @@
|
||||||
import org.gradle.internal.os.OperatingSystem
|
import org.gradle.internal.os.OperatingSystem
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id "me.filippov.gradle.jvm.wrapper" version "0.9.3"
|
||||||
|
}
|
||||||
|
|
||||||
|
jvmWrapper {
|
||||||
|
linuxJvmUrl = "https://corretto.aws/downloads/latest/amazon-corretto-11-x64-linux-jdk.tar.gz"
|
||||||
|
macJvmUrl = "https://corretto.aws/downloads/latest/amazon-corretto-11-x64-macos-jdk.tar.gz"
|
||||||
|
windowsJvmUrl = "https://corretto.aws/downloads/latest/amazon-corretto-11-x64-windows-jdk.zip"
|
||||||
|
}
|
||||||
|
|
||||||
wrapper {
|
wrapper {
|
||||||
distributionType = Wrapper.DistributionType.ALL
|
distributionType = Wrapper.DistributionType.ALL
|
||||||
}
|
}
|
||||||
|
@ -13,8 +23,15 @@ project.ext.isPrerelease = true
|
||||||
project.ext.prereleaseName = "alpha"
|
project.ext.prereleaseName = "alpha"
|
||||||
project.ext.prerealeaseUpdate = 2
|
project.ext.prerealeaseUpdate = 2
|
||||||
|
|
||||||
allprojects {
|
subprojects {
|
||||||
apply plugin: 'java'
|
apply plugin: 'java'
|
||||||
|
apply plugin: 'maven-publish'
|
||||||
|
|
||||||
|
project.ext.lwjglVersion = "3.2.3"
|
||||||
|
|
||||||
|
project.ext.jomlVersion = "1.9.25"
|
||||||
|
project.ext.steamworks4jVersion = "1.8.0"
|
||||||
|
project.ext.steamworks4jServerVersion = "1.8.0"
|
||||||
|
|
||||||
group = "cz.tefek"
|
group = "cz.tefek"
|
||||||
version = isPrerelease ?
|
version = isPrerelease ?
|
||||||
|
@ -30,16 +47,6 @@ allprojects {
|
||||||
sourceCompatibility = JavaVersion.VERSION_11
|
sourceCompatibility = JavaVersion.VERSION_11
|
||||||
targetCompatibility = JavaVersion.VERSION_11
|
targetCompatibility = JavaVersion.VERSION_11
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
subprojects {
|
|
||||||
apply plugin: 'maven-publish'
|
|
||||||
|
|
||||||
project.ext.lwjglVersion = "3.2.3"
|
|
||||||
|
|
||||||
project.ext.jomlVersion = "1.9.25"
|
|
||||||
project.ext.steamworks4jVersion = "1.8.0"
|
|
||||||
project.ext.steamworks4jServerVersion = "1.8.0"
|
|
||||||
|
|
||||||
publishing {
|
publishing {
|
||||||
publications {
|
publications {
|
||||||
|
|
|
@ -83,6 +83,76 @@ esac
|
||||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||||
|
|
||||||
|
|
||||||
|
# GRADLE JVM WRAPPER START MARKER
|
||||||
|
BUILD_DIR=$APP_HOME/build
|
||||||
|
|
||||||
|
if [ "$darwin" = "true" ]; then
|
||||||
|
JVM_TEMP_FILE=$BUILD_DIR/jvm-macosx-x64.tar.gz
|
||||||
|
JVM_URL=https://corretto.aws/downloads/latest/amazon-corretto-11-x64-macos-jdk.tar.gz
|
||||||
|
JVM_TARGET_DIR=$BUILD_DIR/gradle-jvm/amazon-corretto-11-x64-macos-jdk-378f50
|
||||||
|
elif [ "$cygwin" = "true" ] || [ "$msys" = "true" ]; then
|
||||||
|
JVM_TEMP_FILE=$BUILD_DIR/jvm-windows-x64.zip
|
||||||
|
JVM_URL=https://d3pxv6yz143wms.cloudfront.net/11.0.4.11.1/amazon-corretto-11.0.4.11.1-windows-x64.zip
|
||||||
|
JVM_TARGET_DIR=$BUILD_DIR/amazon-corretto-11-x64-windows-jdk-f3b61a
|
||||||
|
else
|
||||||
|
JVM_TEMP_FILE=$BUILD_DIR/jvm-linux-x64.tar.gz
|
||||||
|
JVM_URL=https://corretto.aws/downloads/latest/amazon-corretto-11-x64-linux-jdk.tar.gz
|
||||||
|
JVM_TARGET_DIR=$BUILD_DIR/gradle-jvm/amazon-corretto-11-x64-linux-jdk-e264c4
|
||||||
|
fi
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
if [ -e "$JVM_TARGET_DIR/.flag" ] && [ -n "$(ls "$JVM_TARGET_DIR")" ] && [ "x$(cat "$JVM_TARGET_DIR/.flag")" = "x${JVM_URL}" ]; then
|
||||||
|
# Everything is up-to-date in $JVM_TARGET_DIR, do nothing
|
||||||
|
true
|
||||||
|
else
|
||||||
|
warn "Downloading $JVM_URL to $JVM_TEMP_FILE"
|
||||||
|
|
||||||
|
rm -f "$JVM_TEMP_FILE"
|
||||||
|
mkdir -p "$BUILD_DIR"
|
||||||
|
if command -v curl >/dev/null 2>&1; then
|
||||||
|
if [ -t 1 ]; then CURL_PROGRESS="--progress-bar"; else CURL_PROGRESS="--silent --show-error"; fi
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
curl $CURL_PROGRESS --output "${JVM_TEMP_FILE}" "$JVM_URL"
|
||||||
|
elif command -v wget >/dev/null 2>&1; then
|
||||||
|
if [ -t 1 ]; then WGET_PROGRESS=""; else WGET_PROGRESS="-nv"; fi
|
||||||
|
wget $WGET_PROGRESS -O "${JVM_TEMP_FILE}" "$JVM_URL"
|
||||||
|
else
|
||||||
|
die "ERROR: Please install wget or curl"
|
||||||
|
fi
|
||||||
|
|
||||||
|
warn "Extracting $JVM_TEMP_FILE to $JVM_TARGET_DIR"
|
||||||
|
rm -rf "$JVM_TARGET_DIR"
|
||||||
|
mkdir -p "$JVM_TARGET_DIR"
|
||||||
|
|
||||||
|
if [ "$cygwin" = "true" ] || [ "$msys" = "true" ]; then
|
||||||
|
unzip "$JVM_TEMP_FILE" -d "$JVM_TARGET_DIR"
|
||||||
|
else
|
||||||
|
tar -x -f "$JVM_TEMP_FILE" -C "$JVM_TARGET_DIR"
|
||||||
|
fi
|
||||||
|
rm -f "$JVM_TEMP_FILE"
|
||||||
|
|
||||||
|
echo "$JVM_URL" >"$JVM_TARGET_DIR/.flag"
|
||||||
|
fi
|
||||||
|
|
||||||
|
JAVA_HOME=
|
||||||
|
for d in "$JVM_TARGET_DIR" "$JVM_TARGET_DIR"/* "$JVM_TARGET_DIR"/Contents/Home "$JVM_TARGET_DIR"/*/Contents/Home; do
|
||||||
|
if [ -e "$d/bin/java" ]; then
|
||||||
|
JAVA_HOME="$d"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ '!' -e "$JAVA_HOME/bin/java" ]; then
|
||||||
|
die "Unable to find bin/java under $JVM_TARGET_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Make it available for child processes
|
||||||
|
export JAVA_HOME
|
||||||
|
|
||||||
|
set +e
|
||||||
|
|
||||||
|
# GRADLE JVM WRAPPER END MARKER
|
||||||
|
|
||||||
# Determine the Java command to use to start the JVM.
|
# Determine the Java command to use to start the JVM.
|
||||||
if [ -n "$JAVA_HOME" ] ; then
|
if [ -n "$JAVA_HOME" ] ; then
|
||||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||||
|
|
|
@ -35,6 +35,67 @@ for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
|
||||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||||
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
|
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
|
||||||
|
|
||||||
|
@rem GRADLE JVM WRAPPER START MARKER
|
||||||
|
|
||||||
|
setlocal
|
||||||
|
|
||||||
|
set BUILD_DIR=%APP_HOME%build\
|
||||||
|
set JVM_TARGET_DIR=%BUILD_DIR%gradle-jvm\amazon-corretto-11-x64-windows-jdk-f3b61a\
|
||||||
|
|
||||||
|
set JVM_TEMP_FILE=jvm-windows-x64.zip
|
||||||
|
set JVM_URL=https://corretto.aws/downloads/latest/amazon-corretto-11-x64-windows-jdk.zip
|
||||||
|
|
||||||
|
set POWERSHELL=%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
|
||||||
|
|
||||||
|
if not exist "%JVM_TARGET_DIR%" MD "%JVM_TARGET_DIR%"
|
||||||
|
|
||||||
|
if not exist "%JVM_TARGET_DIR%.flag" goto downloadAndExtractJvm
|
||||||
|
|
||||||
|
set /p CURRENT_FLAG=<"%JVM_TARGET_DIR%.flag"
|
||||||
|
if "%CURRENT_FLAG%" == "%JVM_URL%" goto continueWithJvm
|
||||||
|
|
||||||
|
:downloadAndExtractJvm
|
||||||
|
|
||||||
|
CD "%BUILD_DIR%"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
echo Downloading %JVM_URL% to %BUILD_DIR%%JVM_TEMP_FILE%
|
||||||
|
if exist "%JVM_TEMP_FILE%" DEL /F "%JVM_TEMP_FILE%"
|
||||||
|
"%POWERSHELL%" -nologo -noprofile -Command "Set-StrictMode -Version 3.0; $ErrorActionPreference = \"Stop\"; (New-Object Net.WebClient).DownloadFile('%JVM_URL%', '%JVM_TEMP_FILE%')"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
RMDIR /S /Q "%JVM_TARGET_DIR%"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
MKDIR "%JVM_TARGET_DIR%"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
CD "%JVM_TARGET_DIR%"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
echo Extracting %BUILD_DIR%%JVM_TEMP_FILE% to %JVM_TARGET_DIR%
|
||||||
|
"%POWERSHELL%" -nologo -noprofile -command "Set-StrictMode -Version 3.0; $ErrorActionPreference = \"Stop\"; Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory('..\\..\\%JVM_TEMP_FILE%', '.');"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
DEL /F "..\..\%JVM_TEMP_FILE%"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
echo %JVM_URL%>"%JVM_TARGET_DIR%.flag"
|
||||||
|
if errorlevel 1 goto fail
|
||||||
|
|
||||||
|
:continueWithJvm
|
||||||
|
|
||||||
|
set JAVA_HOME=
|
||||||
|
for /d %%d in ("%JVM_TARGET_DIR%"*) do if exist "%%d\bin\java.exe" set JAVA_HOME=%%d
|
||||||
|
if not exist "%JAVA_HOME%\bin\java.exe" (
|
||||||
|
echo Unable to find java.exe under %JVM_TARGET_DIR%
|
||||||
|
goto fail
|
||||||
|
)
|
||||||
|
|
||||||
|
endlocal & set JAVA_HOME=%JAVA_HOME%
|
||||||
|
|
||||||
|
@rem GRADLE JVM WRAPPER END MARKER
|
||||||
|
|
||||||
@rem Find java.exe
|
@rem Find java.exe
|
||||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue