What are the encumbered components in the JDK?
As of JavaOne 2007, the larger encumbered components requiring binary files for a full build included the font rasterizer, the graphics rasterizer, and the sound engine. Smaller components included some cryptographic algorithms, some SNMP code, and some of the imaging APIs. As of JavaOne 2008, the only remaining encumbrances are the sound engine, SNMP code, and a few data configuration files within the imaging APIs. The SNMP code is not strictly required by the specification. So nearly all of the encumbered components have been replaced by Free software alternatives.