Eclipse Buckminster
   HOME

TheInfoList



OR:

The Buckminster Project is an
Eclipse (software) Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, u ...
technology sub-project focused on component assembly. Buckminster facilitates straightforward sharing of complex assemblies of software components. It is particularly useful for building and sharing virtual distros, distributions of software components which share components across multiple software projects and repositories. In February 2019 project was archived.


Operation

A Buckminster ''CQUERY (component query)'' names a component assembly. Using a CQUERY, Buckminster can find and locate all the components necessary to complete that particular configuration. Finding needed components includes transitively finding all the components needed by those components. The process which Buckminster implements to transitively locate and then download and install a full set of components for a particular CQUERY is called ''materialization''. A CQUERY is typically published by a developer (or development team) to denote their work: those interested in accessing and using this software can ask Buckminster to fetch everything necessary by quoting the CQUERY. A Buckminster ''RMAP (resource map)'' is associated with a CQUERY, and lists one or more software repositories in which appropriate components can be found. Many popular repository formats are supported, including Concurrent Versions System, Subversion,
Apache Maven Maven is a build automation tool used primarily for Java projects. Maven can also be used to build and manage projects written in C#, Ruby, Scala, and other languages. The Maven project is hosted by the Apache Software Foundation, where it was ...
,
Perforce Perforce, legally Perforce Software, Inc., is an American developer of software used for developing and running applications, including version control software, web-based repository management, developer collaboration, application lifecycle man ...
and Eclipse platform infrastructures. A Buckminster ''CSPEC (component specification)'' lists appropriate attributes of a component such as how to build it and on what other components it depends on. CSPECs are frequently automatically generated by Buckminster based on meta-information available elsewhere within repositories and the build environment. Automatically generated CSPECs can be manually via ''CSPECX CSPEC eXtensions". A Buckminster ''BOM (bill of materials)'' lists in full all the details necessary to fulfill a particular CQUERY, and is automatically generated by Buckminster. BOMs are sometimes saved and re-submitted so as to ensure that specific users materialize precisely the same components, in the right versions, as one another. Buckminster CQUERYs, RMAPs, CSPECs and BOMs are specified in
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable ...
.


See also

* Build automation **
List of build automation software Build automation involves Scripting language, scripting or automating the process of Compiler, compiling computer source code into binary code. Below is a list of notable tools associated with automating build processes. Make-based * make (softwa ...
*
Apache Maven Maven is a build automation tool used primarily for Java projects. Maven can also be used to build and manage projects written in C#, Ruby, Scala, and other languages. The Maven project is hosted by the Apache Software Foundation, where it was ...
*
Apache Ant Apache Ant is a software tool for automating software build processes which originated from the Apache Tomcat project in early 2000 as a replacement for the Make build tool of Unix. It is similar to Make, but is implemented using the Java langua ...
,


External links


Main wiki page for Buckminster

High level introduction to Buckminster

Typical usage scenarios, including building virtual distros

Full XML specifications of Buckminster model

Bricklaying with Buckminster
Software distribution Version control systems Software development process Eclipse technology Eclipse software {{programming-software-stub