Open source JavaFX coming to iOS and Android
It didn’t make the imposed end of 2012 deadline to fully open source, but there’s big news ahead for JavaFX
complete open sourcing was arguably the
biggest announcement at last October’s JavaOne. It was
a shock to Richard Bair however, the Chief Architect for the Client
who yesterday admitted that he wasn’t told of the
deadline before the big reveal to the JavaOne
The rich internet application platform enjoyed a renaissance in 2012 with JavaFX 2.0 starting afresh after the botched 1.x series. Opening the source – by the end of 2012, no less – was meant to be a demonstration of Oracle’s commitment to the platform.
Although they didn’t quite make that ambitious end-of-year deadline, Bair has provided a welcome update on the team’s efforts and also a big surprise – JavaFX is making its way onto iOS and Android.
Bair has revealed that both ports will be open sourced after a “majority” of survey respondents expressed interest on contributing to the code. The ports are based “on an as-yet unreleased version of Java SE Embedded for iOS/Android,” which may prove to be a big boost for Oracle’s embedded push, especially if it can find its way onto Apple devices.
“The first bits and pieces for iOS should be out next week, with the rest of iOS and Android coming out at about the same time as the rest of prism (there is some timing dependency there),” explained Bair.
Understandably, plenty of licensing questions have been raised about iOS, with Apple not supporting GPL licenses in the App Store. Bair explained how he plans to get around this legal minefield:
My understanding (and I’m not a lawyer) is that this means that if you take OpenJFX + OpenJDK (minus any binary stubs released under a different license), then you can safely combine this with your application and release your application under your own license as a single application co-bundle. You can do the same with the GA release of JavaFX + JavaSE. The difference is that we do not yet have iOS / Android on our official release roadmap, so that for the time being, the only way to use JavaFX on iOS is via OpenJDK / OpenJFX. I can imagine this would make open source guys smile (open source goes where closed source does not!).
A total of 35 JavaFX projects have now been fully open sourced, amounting to 543,055 lines of code. The latest to pass inspection includes java-fx beans, embed Swing and SWT APIs and several implementations of Decora, JavaFX’s DSL Shader language.
Seven further projects are expected to be open sourced entirely
within the next two weeks, including the remainder of graphics
engine Prism. This would leave javafx-font as the only project
missing from a completely open sourced JavaFX.
While the team understandably missed their imposed deadline to open up JavaFX completely, the news that JavaFX will go cross-platform more than makes up for it. By making its way onto iOS, it could be the kickstart that the technology needs to enter the mainstream.