Dependencies on java.desktop

Nir Lisker nlisker at gmail.com
Tue May 18 21:11:40 UTC 2021


I would also be surprised if printing and bean adapters are used much, but
what are the options? Rewrite the printing implementation.

On Tue, May 18, 2021 at 8:45 PM Tom Schindl <tom.schindl at bestsolution.at>
wrote:

> Uff - I'd like to revisit this topic. As I did some jlink stuff for our
> applications adding java.desktop once more bugged me.
>
> I guess the first thing to do is to file a JIRA-Ticket but it really
> starts to bug me to include java.desktop although I don't plan to use
> printing (and I guess > 90% of the JavaFX don't use the printing API
> either but produce PDFs or whatever) and Java-Beans.
>
> Tom
>
> Am 27.03.18 um 14:26 schrieb Kevin Rushforth:
> > Hi Tom,
> >
> > Yes, this is an unfortunate dependency. It is "only" an implementation
> > dependency, meaning that nothing in the public API depends on
> > java.desktop (which is why we don't "requires transient java.desktop"),
> > so it should be possible to remove this dependency in the future. As
> > noted, it is only there because Java Beans is part of the java.desktop
> > module.
> >
> > In the interim, your suggestion of "requires static java.base" could be
> > the way to go. It would need a spec change to the JavaFX beans adapter
> > classes documenting that they would throw an
> > UnsupportedOperationException if java.desktop was not present at
> > runtime, along with a recommendation that applications needing that
> > functionality should add "requires java.desktop" to their own
> > module-info.java.
> >
> > Note that this would only help non-graphical JavaFX applications that
> > use javafx.base for its collections, properties, and bindings, since
> > javafx.graphics requires java.desktop in a way that currently cannot
> > easily be made optional (not without reimplementing printing support
> > anyway).
> >
> > -- Kevin
> >
> >
> > Tom Schindl wrote:
> >> Hi,
> >>
> >> Anyone else has an opinion on that? Is require static the way to go?
> >>
> >> Tom
> >>
> >> On 21.03.18 23:23, Tom Schindl wrote:
> >>> Hi,
> >>>
> >>> I always thought the JavaFX-Codebase should be able to run with just
> the
> >>> java.base module but I was browsing the codebase a bit and was suprised
> >>> (or rather shocked) that even the base-module requires java.desktop.
> >>>
> >>> If I get it correct this because of the java.beans (provided by the
> >>> adapters) stuff is found in there. Why hasn't the requires there not
> >>> defined as:
> >>>
> >>> requires static java.desktop;
> >>>
> >>> Tom
> >>>
>


More information about the openjfx-dev mailing list