Compiling 8u20-b26 for iOS

Niklas Therning niklas at
Tue Sep 2 14:42:34 UTC 2014

I couldn't keep my hands off and by looking at how it's done in
dalvik.gradle from javafxports [1] I managed to get it to build the iOS
web.jar. Here's the patch for ios.gradle:

diff -r e56a8bbcba20 buildSrc/ios.gradle
--- a/buildSrc/ios.gradle Thu Jul 24 21:23:07 2014 -0700
+++ b/buildSrc/ios.gradle Tue Sep 02 16:35:41 2014 +0200
@@ -340,7 +340,17 @@
     apply plugin: 'java'

     compileJava {
-        enabled = false
+ = ['src/ios/java'];
+    }
+    sourceSets {
+        main {
+            java {
+                srcDirs= ['src/ios/java']
+            }
+        }
+    }
+    dependencies {
+         compile files("../graphics/build/classes/ios");

     afterEvaluate {

Let me know if you want me to create a JIRA and post this there instead.
This patch helped me get past the first problem with the builders project
failing. I then had to fix a few compilation problems in the web module's
iOS code. A few classes (PopupFeature and PromptData) were missing and a
few of the others had to be brought up to date with the code in src/main/.
Haven't been able to test the patched web iOS code yet but at least it
compiles now. I should probably create an issue for all of this and attach
a patch, right?


On Tue, Sep 2, 2014 at 4:34 PM, Kevin Rushforth <kevin.rushforth at>

>  I'll take a look at the build order, but it sounds like a bug. Perhaps
> you can just locally disable the builders or add a dependency on the
> compilation task for the IOS web files.
> As to your other question, Richard is right that we omit lib/ext from
> compilation, but there can be issues in doing this (e.g., when running
> tests or building apps). We recommend that you remove (not just rename) the
> jfxrt.jar from the JDK you use to build.
> -- Kevin
> Richard Bair wrote:
> I’ll let one of the other guys answer about the web component build order, but ...
> On Sep 1, 2014, at 11:58 PM, Niklas Therning <niklas at> <niklas at> wrote:
>  Also, how is the jfxrt.jar that comes with my Java8 installation treated by
> the build? I guess it is ignored since otherwise I wouldn't get any
> compilation problems due to missing WebView etc since those classes are in
> Java8's jfxrt.jar?
>  The jfxrt.jar that comes with the JDK is in the lib/ext directory (as is Nashorn). We simply omit both from the class path when we build by setting java.ext.dirs= (to empty).
> Richard

More information about the openjfx-dev mailing list