Please consider the attached patch which applies the upstream patch [1].

References:
[1] 
https://github.com/gradle/gradle/commit/ac15612d41b43c39c8e39d12fdd6621589b0f782
On Sat, Sep 29, 2018 at 8:33 PM Tiago Stürmer Daitx
<tiago.da...@canonical.com> wrote:
>
> Package: gradle
> Version: 4.4-2
> Severity: normal
>
> Dear Maintainer,
>
> gradle 4.4-2 currently FTBFS when build with openjdk-11.
>
> * Exception is:
> java.lang.IllegalArgumentException: Could not determine java version from 
> '11'.
>         at org.gradle.api.JavaVersion.toVersion(JavaVersion.java:72)
>         at org.gradle.api.JavaVersion.current(JavaVersion.java:82)
>         at 
> org.gradle.internal.jvm.UnsupportedJavaRuntimeException.assertUsingVersion(UnsupportedJavaRuntimeException.java:42)
>         at 
> org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:32)
>         at 
> org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
>         at 
> org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
>         at 
> org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
>         at 
> org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:257)
>         at 
> org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:191)
>         at org.gradle.launcher.Main.doAction(Main.java:33)
>         at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
>         at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:566)
>         at 
> org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:60)
>         at 
> org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:37)
>         at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
>
> it needs either to be updated to 4.7 or have the upstream patch [1]
> applied.
>
> References:
> [1] 
> https://github.com/gradle/gradle/commit/ac15612d41b43c39c8e39d12fdd6621589b0f782#diff-1992c69962eb418e832c020dd61b2f1b.diff
>
>
> -- System Information:
> Debian Release: buster/sid
>   APT prefers cosmic
>   APT policy: (500, 'cosmic'), (400, 'cosmic-proposed')
> Architecture: amd64 (x86_64)
>
> Kernel: Linux 4.18.0-7-generic (SMP w/4 CPU cores)
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
> LANGUAGE=en_US (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/dash
> Init: systemd (via /run/systemd/system)
> LSM: AppArmor: enabled



-- 
Tiago Stürmer Daitx
Software Engineer
tiago.da...@canonical.com

PGP Key: 4096R/F5B213BE (hkp://keyserver.ubuntu.com)
Fingerprint = 45D0 FE5A 8109 1E91 866E  8CA4 1931 8D5E F5B2 13BE
diff -Nru gradle-4.4/debian/changelog gradle-4.4/debian/changelog
--- gradle-4.4/debian/changelog	2018-09-17 10:15:05.000000000 +0100
+++ gradle-4.4/debian/changelog	2018-09-29 18:50:56.000000000 +0100
@@ -1,3 +1,10 @@
+gradle (4.4-3) UNRELEASED; urgency=medium
+
+  * debian/patches/enable-jdk-11-support-ac15612d41b43c39c.patch: enable
+    support for openjdk-11. (Closes: #909905)
+
+ -- Tiago Stürmer Daitx <tiago.da...@ubuntu.com>  Sat, 29 Sep 2018 17:50:56 +0000
+
 gradle (4.4-2) unstable; urgency=medium
 
   * Team upload.
diff -Nru gradle-4.4/debian/patches/enable-jdk-11-support-ac15612d41b43c39c.patch gradle-4.4/debian/patches/enable-jdk-11-support-ac15612d41b43c39c.patch
--- gradle-4.4/debian/patches/enable-jdk-11-support-ac15612d41b43c39c.patch	1970-01-01 01:00:00.000000000 +0100
+++ gradle-4.4/debian/patches/enable-jdk-11-support-ac15612d41b43c39c.patch	2018-09-29 18:50:56.000000000 +0100
@@ -0,0 +1,560 @@
+Description: make JavaVersion support JDK 11 and JEP-223
+ Add JavaVersion.VERSION_11 and support JEP223
+Origin: upstream, https://github.com/gradle/gradle/commit/ac15612d41b43c39c8e39d12fdd6621589b0f782
+Bug-Debian: http://bugs.debian.org/909905
+Forwarded: not-needed
+Applied-Upstream: ac15612d41b43c39c8e39d12fdd6621589b0f782
+Last-Update: 2018-09-29
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+
+From ac15612d41b43c39c8e39d12fdd6621589b0f782 Mon Sep 17 00:00:00 2001
+From: Bo Zhang <b...@gradle.com>
+Date: Wed, 21 Mar 2018 16:08:44 +0800
+Subject: [PATCH] Make JavaVersion support JDK 11 and JEP-223 (#4759)
+
+Add JavaVersion.VERSION_11 and support JEP223
+---
+ .../main/java/org/gradle/api/JavaVersion.java | 123 ++++++----
+ .../org/gradle/api/JavaVersionSpec.groovy     | 212 ++++++++----------
+ .../changes/accepted-public-api-changes.json  |  20 ++
+ .../cli/BuildActionsFactoryTest.groovy        |   8 +-
+ 4 files changed, 199 insertions(+), 164 deletions(-)
+
+--- a/subprojects/base-services/src/main/java/org/gradle/api/JavaVersion.java
++++ b/subprojects/base-services/src/main/java/org/gradle/api/JavaVersion.java
+@@ -17,25 +17,26 @@ package org.gradle.api;
+ 
+ import com.google.common.annotations.VisibleForTesting;
+ 
+-import java.util.regex.Matcher;
+-import java.util.regex.Pattern;
++import java.util.ArrayList;
++import java.util.List;
+ 
+ /**
+  * An enumeration of Java versions.
++ * Before 9: http://www.oracle.com/technetwork/java/javase/versioning-naming-139433.html
++ * 9+: http://openjdk.java.net/jeps/223
+  */
+ public enum JavaVersion {
+-    VERSION_1_1(false), VERSION_1_2(false), VERSION_1_3(false), VERSION_1_4(false),
+-    // starting from here versions are 1_ but their official name is "Java 6", "Java 7", ...
+-    VERSION_1_5(true), VERSION_1_6(true), VERSION_1_7(true), VERSION_1_8(true), VERSION_1_9(true), VERSION_1_10(true);
++    VERSION_1_1, VERSION_1_2, VERSION_1_3, VERSION_1_4,
++    VERSION_1_5, VERSION_1_6, VERSION_1_7, VERSION_1_8,
++    VERSION_1_9, VERSION_1_10, VERSION_11, VERSION_HIGHER;
++    // Since Java 9, version should be X instead of 1.X
++    // However, to keep backward compatibility, we change from 11
++    private static final int FIRST_MAJOR_VERSION_ORDINAL = 10;
+     private static JavaVersion currentJavaVersion;
+-    private final boolean hasMajorVersion;
+     private final String versionName;
+-    private final String majorVersion;
+ 
+-    JavaVersion(boolean hasMajorVersion) {
+-        this.hasMajorVersion = hasMajorVersion;
+-        this.versionName = name().substring("VERSION_".length()).replace('_', '.');
+-        this.majorVersion = name().substring(10);
++    JavaVersion() {
++        this.versionName = ordinal() >= FIRST_MAJOR_VERSION_ORDINAL ? getMajorVersion() : "1." + getMajorVersion();
+     }
+ 
+     /**
+@@ -54,22 +55,18 @@ public enum JavaVersion {
+         }
+ 
+         String name = value.toString();
+-        Matcher matcher = Pattern.compile("(\\d{1,2})(\\D.+)?").matcher(name);
+-        if (matcher.matches()) {
+-            int index = Integer.parseInt(matcher.group(1)) - 1;
+-            if (index > 0 && index < values().length && values()[index].hasMajorVersion) {
+-                return values()[index];
+-            }
+-        }
+ 
+-        matcher = Pattern.compile("1\\.(\\d{1,2})(\\D.+)?").matcher(name);
+-        if (matcher.matches()) {
+-            int versionIdx = Integer.parseInt(matcher.group(1)) - 1;
+-            if (versionIdx >= 0 && versionIdx < values().length) {
+-                return values()[versionIdx];
+-            }
++        int firstNonVersionCharIndex = findFirstNonVersionCharIndex(name);
++
++        String[] versionStrings = name.substring(0, firstNonVersionCharIndex).split("\\.");
++        List<Integer> versions = convertToNumber(name, versionStrings);
++
++        if (isLegacyVersion(versions)) {
++            assertTrue(name, versions.get(1) > 0);
++            return getVersionForMajor(versions.get(1));
++        } else {
++            return getVersionForMajor(versions.get(0));
+         }
+-        throw new IllegalArgumentException(String.format("Could not determine java version from '%s'.", name));
+     }
+ 
+     /**
+@@ -90,11 +87,7 @@ public enum JavaVersion {
+     }
+ 
+     public static JavaVersion forClassVersion(int classVersion) {
+-        int index = classVersion - 45; //class file versions: 1.1 == 45, 1.2 == 46...
+-        if (index >= 0 && index < values().length) {
+-            return values()[index];
+-        }
+-        throw new IllegalArgumentException(String.format("Could not determine java version from '%d'.", classVersion));
++        return getVersionForMajor(classVersion - 44); //class file versions: 1.1 == 45, 1.2 == 46...
+     }
+ 
+     public static JavaVersion forClass(byte[] classData) {
+@@ -116,18 +109,22 @@ public enum JavaVersion {
+         return this == VERSION_1_7;
+     }
+ 
+-    private boolean isJava8() {
++    public boolean isJava8() {
+         return this == VERSION_1_8;
+     }
+ 
+-    private boolean isJava9() {
++    public boolean isJava9() {
+         return this == VERSION_1_9;
+     }
+ 
+-    private boolean isJava10() {
++    public boolean isJava10() {
+         return this == VERSION_1_10;
+     }
+ 
++    public boolean isJava11() {
++        return this == VERSION_11;
++    }
++
+     public boolean isJava5Compatible() {
+         return this.compareTo(VERSION_1_5) >= 0;
+     }
+@@ -148,21 +145,69 @@ public enum JavaVersion {
+         return this.compareTo(VERSION_1_9) >= 0;
+     }
+ 
+-    @Incubating
+     public boolean isJava10Compatible() {
+         return this.compareTo(VERSION_1_10) >= 0;
+     }
+ 
+-    @Override
+-    public String toString() {
+-        return getName();
++    public boolean isJava11Compatible() {
++        return this.compareTo(VERSION_11) >= 0;
+     }
+ 
+-    private String getName() {
++    @Override
++    public String toString() {
+         return versionName;
+     }
+ 
+     public String getMajorVersion() {
+-        return majorVersion;
++        return String.valueOf(ordinal() + 1);
++    }
++
++    private static JavaVersion getVersionForMajor(int major) {
++        return major >= values().length ? JavaVersion.VERSION_HIGHER : values()[major - 1];
++    }
++
++    private static void assertTrue(String value, boolean condition) {
++        if (!condition) {
++            throw new IllegalArgumentException("Could not determine java version from '" + value + "'.");
++        }
++    }
++
++    private static boolean isLegacyVersion(List<Integer> versions) {
++        return 1 == versions.get(0) && versions.size() > 1;
++    }
++
++    private static List<Integer> convertToNumber(String value, String[] versionStrs) {
++        List<Integer> result = new ArrayList<Integer>();
++        for (String s : versionStrs) {
++            assertTrue(value, !isNumberStartingWithZero(s));
++            try {
++                result.add(Integer.parseInt(s));
++            } catch (NumberFormatException e) {
++                assertTrue(value, false);
++            }
++        }
++        assertTrue(value, !result.isEmpty() && result.get(0) > 0);
++        return result;
++    }
++
++    private static boolean isNumberStartingWithZero(String number) {
++        return number.length() > 1 && number.startsWith("0");
++    }
++
++    private static int findFirstNonVersionCharIndex(String s) {
++        assertTrue(s, s.length() != 0);
++
++        for (int i = 0; i < s.length(); ++i) {
++            if (!isDigitOrPeriod(s.charAt(i))) {
++                assertTrue(s, i != 0);
++                return i;
++            }
++        }
++
++        return s.length();
++    }
++
++    private static boolean isDigitOrPeriod(char c) {
++        return (c >= '0' && c <= '9') || c == '.';
+     }
+ }
+--- a/subprojects/base-services/src/test/groovy/org/gradle/api/JavaVersionSpec.groovy
++++ b/subprojects/base-services/src/test/groovy/org/gradle/api/JavaVersionSpec.groovy
+@@ -13,16 +13,20 @@
+  * See the License for the specific language governing permissions and
+  * limitations under the License.
+  */
+-package org.gradle.api;
++package org.gradle.api
+ 
+ 
+ import org.gradle.util.SetSystemProperties
+ import org.junit.Rule
+ import spock.lang.Specification
++import spock.lang.Unroll
+ 
+-public class JavaVersionSpec extends Specification {
++class JavaVersionSpec extends Specification {
++    private static final BigInteger TOO_BIG = (BigInteger.valueOf(Integer.MAX_VALUE)).add(BigInteger.ONE)
++    private static final String TOO_BIG_STR = TOO_BIG.toString()
+ 
+-    @Rule SetSystemProperties sysProp = new SetSystemProperties()
++    @Rule
++    SetSystemProperties sysProp = new SetSystemProperties()
+ 
+     def setup() {
+         JavaVersion.resetCurrent()
+@@ -42,6 +46,8 @@ public class JavaVersionSpec extends Spe
+         JavaVersion.VERSION_1_8.toString() == "1.8"
+         JavaVersion.VERSION_1_9.toString() == "1.9"
+         JavaVersion.VERSION_1_10.toString() == "1.10"
++        JavaVersion.VERSION_11.toString() == "11"
++        JavaVersion.VERSION_HIGHER.toString() == "12"
+     }
+ 
+     def convertsStringToVersion() {
+@@ -71,6 +77,10 @@ public class JavaVersionSpec extends Spe
+         JavaVersion.toVersion("10.1.2") == JavaVersion.VERSION_1_10
+         JavaVersion.toVersion("10-ea") == JavaVersion.VERSION_1_10
+         JavaVersion.toVersion("10-internal") == JavaVersion.VERSION_1_10
++
++        JavaVersion.toVersion("11-ea") == JavaVersion.VERSION_11
++        JavaVersion.toVersion("12-ea") == JavaVersion.VERSION_HIGHER
++        JavaVersion.toVersion("999-ea") == JavaVersion.VERSION_HIGHER
+     }
+ 
+     def convertClassVersionToJavaVersion() {
+@@ -85,27 +95,26 @@ public class JavaVersionSpec extends Spe
+         JavaVersion.forClassVersion(52) == JavaVersion.VERSION_1_8
+         JavaVersion.forClassVersion(53) == JavaVersion.VERSION_1_9
+         JavaVersion.forClassVersion(54) == JavaVersion.VERSION_1_10
++        JavaVersion.forClassVersion(55) == JavaVersion.VERSION_11
++        JavaVersion.forClassVersion(999) == JavaVersion.VERSION_HIGHER
+     }
+ 
+     def failsToConvertStringToVersionForUnknownVersion() {
+         expect:
+-        conversionFails("1");
+-        conversionFails("2");
+-
+-        conversionFails("17");
+-
+-        conversionFails("a");
+-        conversionFails("java-9");
+-        conversionFails("");
+-        conversionFails("  ");
+-
+-        conversionFails("0.1");
+-        conversionFails("1.54");
+-        conversionFails("2.0");
+-        conversionFails("1_4");
+-
+-        conversionFails("9-");
+-        conversionFails("11-ea");
++        conversionFails("a")
++        conversionFails("java-9")
++        conversionFails("")
++        conversionFails("  ")
++
++        conversionFails("0.1")
++        conversionFails("0.1")
++
++        conversionFails('foo')
++        conversionFails('0')
++        conversionFails('1.00')
++        conversionFails('00')
++        conversionFails('09')
++        conversionFails(TOO_BIG_STR)
+     }
+ 
+     def convertsVersionToVersion() {
+@@ -127,16 +136,6 @@ public class JavaVersionSpec extends Spe
+         JavaVersion.toVersion(10) == JavaVersion.VERSION_1_10
+     }
+ 
+-    def failsToConvertNumberToVersionForUnknownVersion() {
+-        expect:
+-        conversionFails(1);
+-        conversionFails(2);
+-        conversionFails(17);
+-        conversionFails(1.21);
+-        conversionFails(2.0);
+-        conversionFails(4.2);
+-    }
+-
+     def currentReturnsJvmVersion() {
+         expect:
+         JavaVersion.current() == JavaVersion.toVersion(System.getProperty("java.version"))
+@@ -149,118 +148,89 @@ public class JavaVersionSpec extends Spe
+ 
+     private void conversionFails(Object value) {
+         try {
+-            JavaVersion.toVersion(value);
+-            org.junit.Assert.fail();
++            JavaVersion.toVersion(value)
++            org.junit.Assert.fail()
+         } catch (IllegalArgumentException e) {
+             assert e.getMessage() == "Could not determine java version from '" + value + "'."
+         }
+     }
+ 
+-    def "uses system property to determine if compatible with Java 5"() {
+-        System.properties['java.version'] = '1.5'
+-
+-        expect:
+-        JavaVersion.current().java5
+-        !JavaVersion.current().java6
+-        !JavaVersion.current().java7
+-        !JavaVersion.current().java8
+-
+-        and:
+-        JavaVersion.current().java5Compatible
+-        !JavaVersion.current().java6Compatible
+-        !JavaVersion.current().java7Compatible
+-        !JavaVersion.current().java8Compatible
+-    }
+-
+-    def "uses system property to determine if compatible with Java 6"() {
+-        System.properties['java.version'] = '1.6'
+-
+-        expect:
+-        !JavaVersion.current().java5
+-        JavaVersion.current().java6
+-        !JavaVersion.current().java7
+-        !JavaVersion.current().java8
+-
+-        and:
+-        JavaVersion.current().java5Compatible
+-        JavaVersion.current().java6Compatible
+-        !JavaVersion.current().java7Compatible
+-        !JavaVersion.current().java8Compatible
+-    }
+-
+-    def "uses system property to determine if compatible with Java 7"() {
+-        System.properties['java.version'] = '1.7'
+-
+-        expect:
+-        !JavaVersion.current().java5
+-        !JavaVersion.current().java6
+-        JavaVersion.current().java7
+-        !JavaVersion.current().java8
+-
+-        and:
+-        JavaVersion.current().java5Compatible
+-        JavaVersion.current().java6Compatible
+-        JavaVersion.current().java7Compatible
+-        !JavaVersion.current().java8Compatible
+-    }
+-
+-    def "uses system property to determine if compatible with Java 8"() {
+-        System.properties['java.version'] = '1.8'
+-
+-        expect:
+-        !JavaVersion.current().java5
+-        !JavaVersion.current().java6
+-        !JavaVersion.current().java7
+-        JavaVersion.current().java8
+-
+-        and:
+-        JavaVersion.current().java5Compatible
+-        JavaVersion.current().java6Compatible
+-        JavaVersion.current().java7Compatible
+-        JavaVersion.current().java8Compatible
+-    }
+-
+-    def "uses system property to determine if compatible with Java 9"() {
+-        System.properties['java.version'] = javaVersion
+-
+-        expect:
+-        !JavaVersion.current().java5
+-        !JavaVersion.current().java6
+-        !JavaVersion.current().java7
+-        !JavaVersion.current().java8
+-        JavaVersion.current().java9
+-
+-        and:
+-        JavaVersion.current().java5Compatible
+-        JavaVersion.current().java6Compatible
+-        JavaVersion.current().java7Compatible
+-        JavaVersion.current().java8Compatible
+-        JavaVersion.current().java9Compatible
+-
+-        where:
+-        javaVersion << ['1.9', '9-ea']
+-    }
+-
+-    def "uses system property to determine if compatible with Java 10"() {
+-        System.properties['java.version'] = javaVersion
+-
+-        expect:
+-        !JavaVersion.current().java5
+-        !JavaVersion.current().java6
+-        !JavaVersion.current().java7
+-        !JavaVersion.current().java8
+-        !JavaVersion.current().java9
+-        JavaVersion.current().java10
+-
+-        and:
+-        JavaVersion.current().java5Compatible
+-        JavaVersion.current().java6Compatible
+-        JavaVersion.current().java7Compatible
+-        JavaVersion.current().java8Compatible
+-        JavaVersion.current().java9Compatible
+-        JavaVersion.current().java10Compatible
++    @Unroll
++    def "uses system property to determine if compatible with Java #versionString"() {
++        System.properties['java.version'] = versionString
++
++        expect:
++        JavaVersion.current() == current
++        JavaVersion.current().java6 == isJava6
++        JavaVersion.current().java7 == isJava7
++        JavaVersion.current().java8 == isJava8
++        JavaVersion.current().java9 == isJava9
++        JavaVersion.current().java10 == isJava10
++        JavaVersion.current().java11 == isJava11
++
++        and:
++        JavaVersion.current().java6Compatible == isJava6Compatible
++        JavaVersion.current().java7Compatible == isJava7Compatible
++        JavaVersion.current().java8Compatible == isJava8Compatible
++        JavaVersion.current().java9Compatible == isJava9Compatible
++        JavaVersion.current().java10Compatible == isJava10Compatible
++        JavaVersion.current().java11Compatible == isJava11Compatible
+ 
+         where:
+-        javaVersion << ['1.10', '10-ea']
++        versionString | current                    | isJava6 | isJava7 | isJava8 | isJava9 | isJava10 | isJava11 | isJava6Compatible | isJava7Compatible | isJava8Compatible | isJava9Compatible | isJava10Compatible | isJava11Compatible
++        '1.5'         | JavaVersion.VERSION_1_5    | false   | false   | false   | false   | false    | false    | false             | false             | false             | false             | false              | false
++        '1.6'         | JavaVersion.VERSION_1_6    | true    | false   | false   | false   | false    | false    | true              | false             | false             | false             | false              | false
++        '1.7'         | JavaVersion.VERSION_1_7    | false   | true    | false   | false   | false    | false    | true              | true              | false             | false             | false              | false
++        '1.8'         | JavaVersion.VERSION_1_8    | false   | false   | true    | false   | false    | false    | true              | true              | true              | false             | false              | false
++        '1.9'         | JavaVersion.VERSION_1_9    | false   | false   | false   | true    | false    | false    | true              | true              | true              | true              | false              | false
++        '9-ea'        | JavaVersion.VERSION_1_9    | false   | false   | false   | true    | false    | false    | true              | true              | true              | true              | false              | false
++        '1.10'        | JavaVersion.VERSION_1_10   | false   | false   | false   | false   | true     | false    | true              | true              | true              | true              | true               | false
++        '10-ea'       | JavaVersion.VERSION_1_10   | false   | false   | false   | false   | true     | false    | true              | true              | true              | true              | true               | false
++        '1.11'        | JavaVersion.VERSION_11     | false   | false   | false   | false   | false    | true     | true              | true              | true              | true              | true               | true
++        '11-ea'       | JavaVersion.VERSION_11     | false   | false   | false   | false   | false    | true     | true              | true              | true              | true              | true               | true
++        '12'          | JavaVersion.VERSION_HIGHER | false   | false   | false   | false   | false    | false    | true              | true              | true              | true              | true               | true
++        '999'         | JavaVersion.VERSION_HIGHER | false   | false   | false   | false   | false    | false    | true              | true              | true              | true              | true               | true
++    }
++
++    /* Following test cases are from http://hg.openjdk.java.net/jdk/jdk/file/af37d9997bd6/test/jdk/java/lang/Runtime/Version/Basic.java */
++
++    def 'can recognize multiple version number'() {
++        expect:
++        JavaVersion.toVersion('9') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9.1') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9.0.1') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9.0.0.1') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9.0.0.0.1') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('404.1.2') == JavaVersion.VERSION_HIGHER
++        JavaVersion.toVersion('9.1.2.3') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('1000.0.0.0.0.0.99999999') == JavaVersion.VERSION_HIGHER
++    }
++
++    def 'can recognize version with $pre'() {
++        expect:
++        JavaVersion.toVersion('9-ea') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9-internal') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9-0') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9.2.7-8') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('2.3.4.5-1a') == JavaVersion.VERSION_1_2
++    }
++
++    def 'can recognize $build'() {
++        expect:
++        JavaVersion.toVersion('9+0') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('3.14+9999900') == JavaVersion.VERSION_1_3
++        JavaVersion.toVersion('9-pre+105') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('6.0.42-8beta+4') == JavaVersion.VERSION_1_6
++    }
++
++    def 'can recognize version with $opt'() {
++        expect:
++        JavaVersion.toVersion('9+-foo') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('9-pre-opt') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion('42+---bar') == JavaVersion.VERSION_HIGHER
++        JavaVersion.toVersion('2.91+-8061493-') == JavaVersion.VERSION_1_2
++        JavaVersion.toVersion('24+-foo.bar') == JavaVersion.VERSION_HIGHER
++        JavaVersion.toVersion('9-ribbit+17-...') == JavaVersion.VERSION_1_9
++        JavaVersion.toVersion("7+1-$TOO_BIG_STR") == JavaVersion.VERSION_1_7
+     }
+ }
+--- a/subprojects/distributions/src/changes/accepted-public-api-changes.json
++++ b/subprojects/distributions/src/changes/accepted-public-api-changes.json
+@@ -170,6 +170,26 @@
+             "type": "org.gradle.api.publish.maven.plugins.MavenPublishPlugin",
+             "member": "Constructor org.gradle.api.publish.maven.plugins.MavenPublishPlugin(org.gradle.internal.reflect.Instantiator,org.gradle.api.internal.artifacts.configurations.DependencyMetaDataProvider,org.gradle.api.internal.file.FileResolver,org.gradle.api.publish.internal.ProjectDependencyPublicationResolver,org.gradle.api.internal.file.FileCollectionFactory,org.gradle.api.internal.ExperimentalFeatures)",
+             "acceptation": "Change to constructor of incubating plugin"
++        },
++        {
++            "type": "org.gradle.api.JavaVersion",
++            "member": "Field VERSION_11",
++            "acceptation": "Support JDK 11"
++        },
++        {
++            "type": "org.gradle.api.JavaVersion",
++            "member": "Field VERSION_HIGHER",
++            "acceptation": "Support JDK 11"
++        },
++        {
++            "type": "org.gradle.api.JavaVersion",
++            "member": "Method org.gradle.api.JavaVersion.isJava11()",
++            "acceptation": "Support JDK 11"
++        },
++        {
++            "type": "org.gradle.api.JavaVersion",
++            "member": "Method org.gradle.api.JavaVersion.isJava11Compatible()",
++            "acceptation": "Support JDK 11"
+         }
+     ]
+ }
+--- a/subprojects/launcher/src/test/groovy/org/gradle/launcher/cli/BuildActionsFactoryTest.groovy
++++ b/subprojects/launcher/src/test/groovy/org/gradle/launcher/cli/BuildActionsFactoryTest.groovy
+@@ -57,10 +57,10 @@ class BuildActionsFactoryTest extends Sp
+     PropertiesToStartParameterConverter propertiesToStartParameterConverter = Stub()
+     JvmVersionDetector jvmVersionDetector = Stub()
+     ParametersConverter parametersConverter = new ParametersConverter(
+-            Stub(LayoutCommandLineConverter), Stub(SystemPropertiesCommandLineConverter),
+-            Stub(LayoutToPropertiesConverter), propertiesToStartParameterConverter,
+-            new DefaultCommandLineConverter(), new DaemonCommandLineConverter(),
+-            propertiesToDaemonParametersConverter)
++        Stub(LayoutCommandLineConverter), Stub(SystemPropertiesCommandLineConverter),
++        Stub(LayoutToPropertiesConverter), propertiesToStartParameterConverter,
++        new DefaultCommandLineConverter(), new DaemonCommandLineConverter(),
++        propertiesToDaemonParametersConverter)
+ 
+     BuildActionsFactory factory = new BuildActionsFactory(loggingServices, parametersConverter, jvmVersionDetector)
+ 
diff -Nru gradle-4.4/debian/patches/series gradle-4.4/debian/patches/series
--- gradle-4.4/debian/patches/series	2018-09-16 17:42:50.000000000 +0100
+++ gradle-4.4/debian/patches/series	2018-09-29 18:50:51.000000000 +0100
@@ -24,3 +24,4 @@
 gradle-4-compatibility.patch
 disable-google-apis.patch
 disable-internal-android-performance-testing.patch
+enable-jdk-11-support-ac15612d41b43c39c.patch

Reply via email to