JDK8 is not supported with Dalvik. However, JavaFX requires JDK8 in two different ways:

1) It requires JDK8 syntax (default methods, lambdas, optional use of final ...) 2) It requires JDK8 class libraries (there are references to classes that are new in JDK8)

So far, we have limited and worded around 1) and Johan has implemented the missing classes for 2).

My understanding is that RetroLabmda will be used to fix the problems associated with 1). Since this works on byte codes, JDK8 will need to be used to create the byte codes and compile the syntax.

Johan?

Steve

On 2014-02-20 1:49 PM, Felix Bembrick wrote:
Isn't that because they need to use the Dalvik Java classes and JDK 8 is not supported with Dalvik?


On 21 February 2014 05:22, Stephen F Northover <steve.x.northo...@oracle.com <mailto:steve.x.northo...@oracle.com>> wrote:


    On 2014-02-19 12:46 PM, Johan Vos wrote:

        Is there a policy on the location where properties are defined?
        I see there are properties on a number of places:
        build.properties (e.g. jfx.build.jdk.version=1.8.0)
        build.gradle (e.g. ext.JAVA_HOME = JDK_HOME)
        buildSrc/(e.g. linux).gradle (e.g. LINUX.compileSwing = true;)
        command line properties (e.g. -Djfx.build.jdk.defenders=true)

        The reason I'm asking:
        for Android/Dalvik, we don't require jfxBuildJdkVersion to be
        1.8.0. There
        are a number of ways to fix this. The current test is
          if (jdkVersion != jfxBuildJdkVersion) {
                     fail("java version mismatch: ${jdkVersion} must be
        ${jfxBuildJdkVersion}")
                 }

        We build the Android/Dalvik runtime with Java 7, hence this
        check fails.
        We can either change jfx.build.jdk.version in build.properties
        (but not
        conditionally), or we can skip the test if
        System.getProperty("jfx.build.jdk.defenders) is true, or we
        can check if
        the OS is Dalvik, or... or...


    Is there a reason why you cannot build with 8?  You will need to
    accept 8 syntax (like lambdas).


        I don't want to pollute the build files with too many tests,
        so I prefer to
        stick to the policy, if there is one.

        Thanks,

        - Johan




Reply via email to