Apache Commons

This is an old revision of this page, as edited by Linuxjava (talk | contribs) at 17:58, 24 September 2014 (Commons Proper). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The Apache Commons is a project of the Apache Software Foundation, formerly under the Jakarta Project. The purpose of the Commons is to provide reusable, open source Java software. The Commons is composed of three parts: proper, sandbox, and dormant.

Commons Proper

The Commons Proper is dedicated to creating and maintaining reusable Java components. The Commons Proper is a place for collaboration and sharing, where developers from throughout the Apache community can work together on projects to be shared by Apache projects and Apache users. Commons developers will make an effort to ensure that their components have minimal dependencies on other software libraries, so that these components can be deployed easily. In addition, Commons components will keep their interfaces as stable as possible, so that Apache users, as well as other Apache projects, can implement these components without having to worry about changes in the future.[1]

Components Description Latest Version Released
BCEL Byte Code Engineering Library - analyze, create, and manipulate Java class files 5.2 2007-06-14
BeanUtils Easy-to-use wrappers around the Java reflection and introspection APIs. 1.9.2 2014-05-29
BSF Bean Scripting Framework - interface to scripting languages, including JSR-223 3.1 2010-24-06
Chain Chain of Responsibility pattern implemention. 1.2 2008-06-02
CLI Command Line arguments parser. 1.2 2009-03-19
Codec General encoding/decoding algorithms (for example phonetic, base64, URL). 1.9 2013-12-25
Collections Extends or augments the Java Collections Framework. 4.0 2013-11-24
Compress Defines an API for working with tar, zip and bzip2 files. 1.8.1 2014-05-14
Configuration Reading of configuration/preferences files in various formats. 1.10 2013-10-27
CSV Component for reading and writing comma separated value files. 1.0 2014-08-14
Daemon Alternative invocation mechanism for unix-daemon-like java code. 1.0.15 2013-03-04
DBCP Database connection pooling services. 2.0.1 2014-05-24
DbUtils JDBC helper library. 1.6 2014-07-20
Digester XML-to-Java-object mapping utility. 3.2 2011-12-13
Discovery Tools for locating resources by mapping service/reference names to resource names. 0.5 2011-04-28
EL Interpreter for the Expression Language defined by the JSP 2.0 specification. 1.0 2003-06-18
Email Library for sending e-mail from Java. 1.3.3 2014-07-11
Exec API for dealing with external process execution and environment management in Java. 1.2 2014-01-02
FileUpload File upload capability for your servlets and web applications. 1.3.1 2014-02-07
Functor A functor is a function that can be manipulated as an object, or an object representing a single, generic function. N/A N/A
Imaging A pure-Java image library. N/A N/A
IO Collection of I/O utilities. 2.4 2012-06-12
JCI Java Compiler Interface 1.1 2013-10-14
JCS Java Caching System 1.3 2007-06-05
Jelly XML based scripting and processing engine. 1.0 2005-06-16
Jexl Expression language which extends the Expression Language of the JSTL. 2.1.1 2011-12-24
JXPath Utilities for manipulating Java Beans using the XPath syntax. 1.3 2008-08-14
Lang Provides extra functionality for classes in java.lang. 3.3.2 2014-04-09
Launcher Cross platform Java application launcher. 1.1 2004-08-22
Logging Wrapper around a variety of logging API implementations. 1.2 2014-07-11
Math Lightweight, self-contained mathematics and statistics components. 3.3 2014-05-14
Modeler Mechanisms to create Model MBeans compatible with JMX specification. 2.0.1 2007-06-25
Net Collection of network utilities and protocol implementations. 3.3 2013-06-12
OGNL An Object-Graph Navigation Language N/A N/A
Pool Generic object pooling component. 2.2 2014-02-24
Primitives Smaller, faster and easier to work with types supporting Java primitive types. 1.0 2003-11-05
Proxy Library for creating dynamic proxies. 1.0 2008-02-28
SCXML An implementation of the State Chart XML specification aimed at creating and maintaining a Java SCXML engine. 0.9 2008-12-01
Validator Framework to define validators and validation rules in an xml file. 1.4.0 2012-02-03
VFS Virtual File System component for treating files, FTP, SMB, ZIP and such like as a single logical file system. 2.0 2011-08-24
Weaver Provides an easy way to enhance (weave) compiled bytecode. 1.0 2014-03-16

Commons Sandbox

The Commons Sandbox provides a workspace where Commons contributors collaborate and experiment on projects not included in the Commons Proper. Commons members champion projects in the Sandbox for promotion to the Commons Proper, and groups of developers work to enhance Sandbox projects until they meet the standards for promotion.

A list of Commons Sandbox projects appears on the Commons Sandbox page.

Commons Dormant

The Commons Dormant is a collection of components that have been declared inactive due to little recent development activity. These components may be used, but must be built yourself. It is best to assume that these components will not be released in the near future.

The current list of Commons Dormant projects is available on the Commons Dormant page.

See also

References

Goyal, Vikram (2003), Using the Jakarta Commons, Part I, retrieved August 13, 2006