Personal tools
You are here: Home Developer Infrastructure Teams Build and Release Archive Build System

Build System

STATUS

Red TriangleThe content on this page is outdated. The page is archived for reference only. For more information about current work, please contact the Build System Team.

Overview

The build system for Kepler currently is based on the assumption that all components other than actors are stored in a single CVS repository and should be built as a unit. As part of the Kepler/CORE effort, we plan to partition Kepler into a kernel of essential functionality and a set of (domain- or technology-specific) extensions that the kernel does not depend on. We propose that the kernel and the extensions be distinct in the source code management system, and that a revised build system enable developers to build, run, package, and distribute the core system and any combination of extensions stored either in the repository with the kernel or in separate repositories.

As a first step we are elaborating the documentation for the current build system so that its key functions will be preserved in the updated system. We are documenting dependencies between Kepler components, both between the components developed for Kepler and between Kepler and 3rd party libraries and applications. And we are enumerating new functions for the build system needed to support the planned extension support.

Documentation of current build system

Current build system use cases. Lists the key functions of the current build system so that current features can be maintained and compared with new functions proposed for the revised build system.

Dependencies between Kepler components

Diagrams depicting compile-time dependencies on 3rd-party libraries. This file can be searched by jar name, Java class, or package name to reveal dependencies on 3rd-party jar files apparent at compile time (i.e., in the source code). The oval in the center of each diagram represents the jar. Boxes to the right of the of the jar are Kepler packages and classes that use the jar, and boxes to the left are packages and classes in the jar used by these Kepler components.

Capabilities needed for extension support

Proposed use cases for revised build system. Lists the business use cases for the revised build system

 

Document Actions