where to set properties

Stephen F Northover steve.x.northover at oracle.com
Thu Feb 20 11:04:38 PST 2014


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.northover at oracle.com <mailto:steve.x.northover at 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
>
>
>



More information about the openjfx-dev mailing list