where to set properties

Johan Vos johan at lodgon.com
Wed Feb 19 09:46:07 PST 2014

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

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...

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.


- Johan

More information about the openjfx-dev mailing list