Move JavaFX to a separate library in the Contributions Manager · Issue #348 · processing/processing4 (original) (raw)

Created by: benfry

The size Processing 4 is massive (hundreds of megabytes) compared to Processing 3. The main problem is that the JavaFX library is enormous, so I'm probably gonna have to move it to a separate library that can be installed from the Contributions Manager. Not a great user experience, but better than everyone having to deal with such a massive download.

Unfortunately, it's not an easy decision, because it requires a lot more effort:

  1. Extra code will be required to warn users to add import processing.javafx.* when they use the FX2D renderer, or to do that automatically behind the scenes
  2. Tools that use JavaFX will no longer work – maybe they can once the JavaFX library is installed, but that'll be still more workarounds and hacking.
  3. Building and maintaining JavaFX in a separate repository similar to processing-video is that much more work for me.

Java 17 is also quite a bit larger than Java 8, but we're just stuck with that. There isn't a good way to modularize a development environment—I can't/shouldn't be anticipating what modules people will need/want to use.