I just sent the following letter to the OpenJDK community “discuss” mailing list:
Hi OpenJDK community!
As announced at JavaOne we (Oracle) would love to contribute JavaFX into OpenJDK as a new project called “JFX”. For some who have been following along, we’ve talked about this for a long time but finally (finally!) we’re ready to act on it and open source the platform. We are not just interested in open sourcing the code, however, we also want to move into an open development model. We already have an open bug database[1]. The project uses Mercurial, so we should fit in pretty well into OpenJDK.
Our basic motivation for wanting to open source JFX is to built a community and ecosystem support and adoption around JavaFX by increasing transparency. Of course we are also interested in getting patches and early feedback from the community[2]! Our goal is to provide the next-generation Java client toolkit, and JFX would be the next step along that path, which hopefully culminates in a JSR for the Java 9 timeframe and including JFX as proper part of the JDK. I would be the initial Project lead for JFX.
A little bit about our project:
It is a significant contribution to the corpus of open source code
It includes over 6000+ public API members (methods / constructors / etc)
It includes over 11,500 unit tests
Core libraries such as observable collections and binding
Scene graph, effects, graphics
CSS support for JavaFX
Media
WebView
Prism (hardware accelerated graphics, including openGL and D3D and java2D implementations)
Glass (windowing system, base porting layer, including mac, linux, and windows implementations)
UI Controls and ChartsOur builds are all Ant, with JUnit for testing (there is some ‘make’ in there for native parts). We also have NetBeans projects setup for each area. There is a lot of code that we’ll be releasing, so as a matter of practicality we’re going to release different parts of JavaFX over the course of the next few months, starting with UI controls followed by charts. We’ll put up a full roadmap onto our project pages, should we be approved to become part of OpenJDK. We’ll make sure that the open source code is always fully buildable by anybody using the sources + a binary plug (which will become unnecessary as we open source the remaining pieces). All of the above listed modules will be open sourced and fully buildable.
What do you think? I’d love to hear any issues and hopefully be able to resolve those prior to requesting an official vote.
Thanks
Richard[1] http://javafx-jira.kenai.com
[2] A good example of the sort of interesting stuff going on out there can be found here: http://jroller.com/neugens/entry/embed_swing_inside_javafx_2
This is the first step towards open sourcing JavaFX into OpenJDK. First I wanted to talk with the community about it, and if it looks favorable, I’ll follow up with an official project proposal. Here’s hoping! If you are a subscriber to “discuss”, please go and throw in some good word for the idea and if you have any questions I’d like to hear those too. If you aren’t a member of “discuss”, go join :-). You can do so here.
It feels good to finally be getting this all out in the open source!
Finally! We’ve been working on this for what seems like forever. We’re raring to go. Let’s hope the community supports our proposal.
Further to what Brian (my boss) said, I have to add that I’m really looking forward to working with the community: not just in releasing all of our source code, but in working with everyone in bringing your high-quality contributions back into the open source project. The Java community has always been, in my opinion, the best development community there is, and I can’t wait to see it kick into high-gear with the open sourcing of JavaFX.
It’s way past time to get top-notch, high-performance, cross-platform desktop Java rocking. I can’t wait!
Regardless of whether you support the proposal, have concerns, or totally oppose it – let your voice be heard! Post a comment into this blog post, or even better, get into the OpenJDK discussion directly.
We’re ready to go. Let’s get this party rocking!
Will you fully open source development from the start (i.e. evolution of current components AND nursery of future components)?
By example, will rich text control be open sourced in first wave, even if not currently available in JavaFX 2 binary (not ready for release)?
Thanks.
Our open source repo will be a live repo, showing development as it happens. So, in the example you mention, you would see the control being developed as it occurs. This means that you will not be seeing us do daily, weekly, monthly, or per-release ‘drops’ of all code from a private repo to a public repo.
Thank you very much.
I’m very happy to see and test future code being developed (particularly rich text and printing support).
I believe this is the way to go. Congratulations guys for making this a great platform! Java Desktop will definitely be ubiquitous this time around. Hopefully the license gymnastics will go away.
Carl
In my opinion this is the only way to penetrate an already crowded market: make it available to everyone for free and once (if) the marketshare is high enough, try to make profit from secondary sources. The question is if you will be eating away from Swing’s or from other technologies.
You know you have my support. 🙂
Along with the multi-platform, is what I most hope.
That’s a really great decision and i think the only way to go.
So let’s hope JavaFX will be adopted by the community and Java will
finally find it’s way to the desktop and mobile.
Gerrit
Congratulations to the JavaFX team. Great work!
Is there a real possibility of having access to the code this year?
Wasn’t kenai dying?
is a really good new!
This is really good news and I have no doubts that the offer will be accepted by the OpenJDK community 🙂
And who said Oracle wasn’t opening up to the java community?
This is great. I look forward to this release into the open source domain.
The current JIRA isn’t completely open. I’ve seen issues marked as duplicated by some unknown private issues. How will this be opened up.
For an example of an issue not available to the general public see http://javafx-jira.kenai.com/browse/RT-11270