Thursday August 13, 2009
Joseph D. Darcy's Sun WeblogJoseph D. Darcy's Sun Weblog JDK 7: New Component Delivery Model in the Works
The JDK includes many logically distinct sets of APIs. Some of the APIs naturally live in the JDK and evolve at the pace of the JDK; other APIs are effectively maintained externally, but are also shipped as part of the public API provided by the JDK. Two APIs in the latter camp are
Currently, those components are maintained under separate version control as part of OpenJDK in the
To reduce the overhead of updating the components and thereby make it possible to update them more frequently, we're in the process of changing the delivery model of these externally maintained components into the JDK. First for JDK 7 and later for OpenJDK 6, instead of tracking these code bases under independent version control in the JDK, the JDK build will logically get the source for those components from a source bundle. The upstream teams will be responsible for providing source bundles and the JDK build will be configurable to use a particular source bundle.
Kelly has been working in implementing this new model for This new approach is the same basic model the IcedTea project uses to provide changes and functionality on top of OpenJDK so there is lots of evidence large code bases can be handled using this model. (2009-08-13 09:00:00.0) Permalink Comments [2]Post a Comment: Comments are closed for this entry. |
Calendar
RSS Feeds
All /Annotation Processing /General /Java /JavaOne /Numerics /OpenJDK SearchLinks
NavigationReferersToday's Page Hits: 1652 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Why does the JDJ 7 build process even compile these upstream libraries? I would have thought his "new component delivery model" would have been in line with the JSR 277 modularity work. And that jaxp/jax-ws (and more importantly xerces!) would be provided/delevered using modules.
Posted by Mark Derricutt on August 13, 2009 at 01:22 PM PDT #
@Mark,
Yes, in due time, the jaxp and jax-ws components will likely be bundled as modules.
These APIs are defined as part of the platform spec in addition to being standalone technologies. The way we've chosen to fulfil that inclusion do date has been by performing a build of the components from source as part of the JDK build; in principle it would be possible to rely on compiled jar files for this purpose instead. (As an open source project, being able to build from source is strongly preferred to requiring linking with binaries of possibly unknown provenance.)
There are analogous decisions to whether or not to rely on system libraries or a copy of library during the build:
"Build architectures and managing dependencies"
http://blogs.sun.com/darcy/entry/build_architectures_and_managing_dependencies
Posted by Joe Darcy on August 13, 2009 at 05:30 PM PDT #