Why is CUPS required?

Phil Race philip.race at oracle.com
Mon May 20 13:36:58 UTC 2013

CUPS is used by the Java 2D printing APIs on Solaris & Linux and similar.
If you want to build an implementation of "Java SE" on a platform where 
is supported and you do not enable printing, then you will fail the JCK.

The suggestion that servers don't print is odd. They sometimes do,
and server-side control of printing was a long ago RFE  - and
has been there since 1.4.

CUPS was needed in the 'old' build system too, so while
'build-dev' can answer questions about how the JDK is
built, but that doesn't make it the place to ask about why the JDK
needs certain platform APIs in order to build.
That is a matter for the relevant groups which depend on those APIs.
In this case 2d-dev.


On 5/20/13 2:57 AM, Victor Lavaud wrote:
> Hello,
> I find it intriguing that ./configure fails when it cannot find CUPS,
> and I wonder if this is because I did something wrong, or the configure
> script is not flexible enough, or the underlying source code cannot work
> without cups.
> I believe there is a number of cases where CUPS has no reason to be
> present: servers, printerless computers.
> Other Java implementations don’t require it either.
> Cheers,
> Victor

More information about the build-dev mailing list