Hi, I introduced this topic during the OpenJDK Committers' workshop in Brussels, on Feb 3, 2025. For a long time, I was thinking about building OpenJFX using the JDK buildsystem, and I just blogged about a very basic and limited POC for doing so on Linux: https://johanvos.wordpress.com/2025/02/27/building-openjfx-using-jdk/ . The POC I have for this (linux-only at the moment) is at https://github.com/johanvos/jdk/tree/jfxpoc-blog This is just a personal idea and effort, but I would be more than happy to discuss how we as the OpenJFX developers might benefit from this.
One of the main reasons for doing this (I list a number of reasons in my blog post), is the cross-compilation capability. It is also very convenient that the result of the build is now a full JDK image, including the JavaFX modules. I am aware that some companies distribute JavaFX modules with their JDK distribution, and this might help a better alignment. Since I am also the OpenJDK/Mobile project lead, I have to work with the JDK build system anyhow. To me personally, it saves a major amount of time if I only have to use 1 build system (configure/make) instead of 2 build systems. This is no criticism at all to Gradle, but I lack the expertise (and time to learn) needed to work efficiently with it. With all the projects I do, I try to be as efficient as possible with my time, and streamlining build systems helps. The JDK build system is really excellent, and since it is used by so many OpenJDK developers, it feels very familiar. The delta that is needed to have it working and support for JavaFX is very small. The POC I did is far from complete. There are a number of issues that need to be tackled, e.g.: * what about webkit? * we have a code-generator for shaders, that is using a very old external dependency. While the JDK build system has great support to generate code, I'm not sure this is the ideal approach * warnings, warnings and warnings. The last item is something that I believe should be tacklked in any case. I had to disable the warnings-as-errors, and I had to add a fair amount of exceptions to javac warnings. This might be a good time to look into this as well. Again, I want to stress that this is just an experiment I did because it would save me lots of time, and make it much easier for me to understand what is going on in builds. I absolutely do not want to imply that this is much better than what we currently have. But maybe others are interested as well, and in that case we can discuss this. - Johan