yairm210 / Unciv

Open-source Android/Desktop remake of Civ V
Mozilla Public License 2.0
8.61k stars 1.58k forks source link

Building on a system with only Java 17 installed #11105

Closed SomeTroglodyte closed 9 months ago

SomeTroglodyte commented 9 months ago

Problem Description

Our current project files only build on systems with a Java 11 installed - as in, installed system-wide and detectable through path and/or JAVA_HOME. This box here has only Java 17 and I refuse to pollute it with such disgusting old smelly old cheese like a Java 11 (joking of course)...

Related Issue Links

PR #10740

Desired Solution

Throw the dice?

Alternative Approaches

I like none of them, not entirely.

Additional Context

I still got build issues since gradle 8. Don't want to install a Java 11, and changing build scripts around without committing them is - not too hard, but fails from time to time. I think there's an outstanding issue with gradle that is meant to go into 8.5 but still isn't ("boohoo kotlin and java targets are not equal" and compilation aborts). Also, build scripts that work in one branch suddenly fail in another, reindexing orgies sometimes help somtimes not.

But - I've learned the cross-compile capability seems gone from gradle or at least it's undocumented (their documentation is all but unreadable): jvmToolchain(17) + targetCompatibility = JavaVersion.VERSION_11 produces binaries (if it compiles at all) that will not run on a jre 11, they're marked for 17. sourceCompatibility changes nothing. I believe targetCompatibility has been changed to be ignored for kotlin sources, might still work for pure java sources. I'm currently debugging only on pure 17 builds, with the entire java-specific blocks (in 3 kts scripts - core desktop testing) removed, so far no build has failed, only leaving the targetCompatibility statements in leads to the mentioned compile and indexing fails.

Note the android builds seem to control target jre level through an entirely different mechanism (AGP probably working around the gradle bugs) and are not affected, cross-compile to java8-compatible binaries works in this case.

SomeTroglodyte commented 9 months ago

For completeness, the exact error is:

Failed to calculate the value of task ':core:compileJava' property 'javaCompiler'.
No matching toolchains found for requested specification: {languageVersion=11, vendor=any, implementation=vendor-specific} for WINDOWS on x86_64.
No locally installed toolchains match and toolchain download repositories have not been configured.

... means I had to rollback for a merge and haven't reapplied the kts changes yet.

yairm210 commented 9 months ago

I see That is a problem, I wonder if we can use something that's not toolchain to specify target language version...

SomeTroglodyte commented 9 months ago

I just compiled on the jbr and launched the debugger on the jre unzipped from the release. By trial and error adapting someone's script, NOT by finding documentation. However, android implications unclear and it still won't debug:

ERROR: This jdwp native library will not work with this VM's version of JVMTI (11.0.0), it needs JVMTI 17.0[.0].

This jdwp native library will not work with this VM's version of JVMTI (11.0.0), it needs JVMTI 17.0[.0].
kotlin {
    jvmToolchain(17)

    target {
        compilations.all {
            kotlinOptions.jvmTarget = JavaVersion.VERSION_11.majorVersion
        }
    }
}
java {
    targetCompatibility = JavaVersion.VERSION_11
}

... this is actually plausible and acceptable - small pity but that's how it is.

My current picture:

New problem observation (aaaargh!): build clean will downgrade to gradle 8.0 and kotlin 1.8.10 - for the clean task only, but still.

The exact error when Gradle refuses to mix targets is at compile time, not at gradle-sync time:

Execution failed for task ':core:compileKotlin'.
> 'compileJava' task (current target is 11) and 'compileKotlin' task (current target is 17) jvm target compatibility should be set to the same Java version.
  Consider using JVM toolchain: https://kotl.in/gradle/jvm/toolchain

Possibly related: https://youtrack.jetbrains.com/issue/KT-48745 Possibly related: https://github.com/gradle/gradle/issues/18935 .. essentially I read there, that if you have no java sources, that "warning" (a warning that fails compilation!) should no longer appear, fixed ages ago. We have no java sources and are several versions later than the versions discussed there, so that's a regression on their parts?

The option that should disable the target comparison check is mentioned in those links: kotlin.jvm.target.validation.mode = IGNORE, goes in $ProjectRoot/gradle.properties, and works on gradle scripts that set a kotlin jvmToolchain(17), imply a 17 target for kotlin, but specify a 11 java target (tested).

Building with the core script targeting jre11 as above, I can successfully run Unciv on a Lollipop (our minSdk level) AVD - is that proof enough the AGP's target control successfully overrides that target spec? I hope so.

todo:

SomeTroglodyte commented 9 months ago

We don't define the clean task(s), gradle does. Inspecting the properties of the clean task Studio calls from the menu - with:

tasks.getByName("clean").run {
    println("properties of $this")
    properties.toSortedMap().forEach {
        println("${it.key} = ${it.value}")
    }
}
SomeTroglodyte commented 9 months ago

TLDR: I would vote for:

patch (including wrapper binary - large!) ```patch Index: gradle/wrapper/gradle-wrapper.properties IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties --- a/gradle/wrapper/gradle-wrapper.properties (revision 9d790a072c75cde8f4963e9ebb3f4c25fa1841f8) +++ b/gradle/wrapper/gradle-wrapper.properties (date 1707473538960) @@ -1,6 +1,7 @@ -#Mon Feb 06 15:51:42 CST 2023 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip distributionPath=wrapper/dists -zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip +networkTimeout=10000 +validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists Index: gradlew.bat IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/gradlew.bat b/gradlew.bat --- a/gradlew.bat (revision 9d790a072c75cde8f4963e9ebb3f4c25fa1841f8) +++ b/gradlew.bat (date 1707473541264) @@ -14,7 +14,7 @@ @rem limitations under the License. @rem -@if "%DEBUG%" == "" @echo off +@if "%DEBUG%"=="" @echo off @rem ########################################################################## @rem @rem Gradle startup script for Windows @@ -25,7 +25,8 @@ if "%OS%"=="Windows_NT" setlocal set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% @@ -40,7 +41,7 @@ set JAVA_EXE=java.exe %JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto execute +if %ERRORLEVEL% equ 0 goto execute echo. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. @@ -75,13 +76,15 @@ :end @rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd +if %ERRORLEVEL% equ 0 goto mainEnd :fail rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% :mainEnd if "%OS%"=="Windows_NT" endlocal Index: core/build.gradle.kts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/core/build.gradle.kts b/core/build.gradle.kts --- a/core/build.gradle.kts (revision 9d790a072c75cde8f4963e9ebb3f4c25fa1841f8) +++ b/core/build.gradle.kts (date 1707470452711) @@ -10,7 +10,13 @@ } kotlin { - jvmToolchain(11) + jvmToolchain(17) + + target { + compilations.all { + kotlinOptions.jvmTarget = JavaVersion.VERSION_11.majorVersion + } + } } java { targetCompatibility = JavaVersion.VERSION_11 Index: gradle.properties IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/gradle.properties b/gradle.properties --- a/gradle.properties (revision 9d790a072c75cde8f4963e9ebb3f4c25fa1841f8) +++ b/gradle.properties (date 1707476005338) @@ -5,3 +5,6 @@ org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=512m android.nonTransitiveRClass=false android.nonFinalResIds=false + +#alternate band-aid for the `jvm target compatibility should be set to the same Java version` problem: +#kotlin.jvm.target.validation.mode = IGNORE Index: gradlew IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/gradlew b/gradlew --- a/gradlew (revision 9d790a072c75cde8f4963e9ebb3f4c25fa1841f8) +++ b/gradlew (date 1707473541094) @@ -55,7 +55,7 @@ # Darwin, MinGW, and NonStop. # # (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. @@ -80,13 +80,10 @@ esac done -APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit - -APP_NAME="Gradle" +# This is normally unused +# shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum @@ -133,22 +130,29 @@ fi else JAVACMD=java - which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the location of your Java installation." + fi fi # Increase the maximum file descriptors if we can. if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then case $MAX_FD in #( max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 MAX_FD=$( ulimit -H -n ) || warn "Could not query maximum file descriptor limit" esac case $MAX_FD in #( '' | soft) :;; #( *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 ulimit -n "$MAX_FD" || warn "Could not set maximum file descriptor limit to $MAX_FD" esac @@ -193,6 +197,10 @@ done fi + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + # Collect all arguments for the java command; # * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of # shell script including quotes and variable substitutions, so put them in @@ -205,6 +213,12 @@ org.gradle.wrapper.GradleWrapperMain \ "$@" +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + # Use "xargs" to parse quoted args. # # With -n1 it outputs one arg per line, with the quotes and backslashes removed. Index: tests/build.gradle.kts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/tests/build.gradle.kts b/tests/build.gradle.kts --- a/tests/build.gradle.kts (revision 9d790a072c75cde8f4963e9ebb3f4c25fa1841f8) +++ b/tests/build.gradle.kts (date 1707408249201) @@ -14,13 +14,6 @@ exceptionFormat = org.gradle.api.tasks.testing.logging.TestExceptionFormat.FULL } - } - - compileJava { - options.encoding = "UTF-8" - } - compileTestJava { - options.encoding = "UTF-8" } } Index: desktop/build.gradle.kts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/desktop/build.gradle.kts b/desktop/build.gradle.kts --- a/desktop/build.gradle.kts (revision 9d790a072c75cde8f4963e9ebb3f4c25fa1841f8) +++ b/desktop/build.gradle.kts (date 1707475599695) @@ -13,7 +13,13 @@ } kotlin { - jvmToolchain(11) + jvmToolchain(17) + + target { + compilations.all { + kotlinOptions.jvmTarget = JavaVersion.VERSION_11.majorVersion + } + } } java { targetCompatibility = JavaVersion.VERSION_11 diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 7454180f2ae8848c63b8b4dea2cb829da983f2fa..033e24c4cdf41af1ab109bc7f253b2b887023340 GIT binary patch literal 63375 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 U4gGs7QN&LsF#s^T`2D~C15%7;Q2+n{ ```