We're the Commons community, dedicated to creating reusable library components in Java. Apache Commons mainly uses Git as the version control system, and Commons components are available as read-only mirrors on Github.
Welcome: CommonsEtiquette | CommonsResources | ArticlesAndTutorials
Developers: GettingInvolved | UsingSVN | UsingGIT | CodeStyle | MovingToGit | UseClirrWithShade
Committers: CommonsPeople | ComponentPlans | CommonsCommitters | CommonsOsgi | UsingNexus | CommonsGroupids | Maven3Plan
Bug Reports: Jira
Security Reports: Security
Components
Components are subprojects of Commons. Every component provides, and maintains one or more jar files, building a library. We distinguish components
by maturity status: Proper (Mature, Releases available), Sandbox (Immature, never released), and Dormant (No longer active, unmaintained).
Name | Status | Description |
---|---|---|
BeanUtils | Proper | Utilities for manipulating java beans, including copying properties, cloning, invoking methods and type conversion. |
Betwixt | Dormant | Services for mapping JavaBeans to XML documents, and vice versa. |
Chain | Proper | A "Chain of Responsibility" pattern implemention for organizing complex processing flows. |
CLI | Proper | Command Line Interface library for processing command-line options and arguments. |
Codec | Proper | General encoding/decoding algorithms. Includes some phonetic encoders, Hex, Base64, and a URL encoder. |
Collections | Proper | Builds upon the Java Collections Framework of List, Set and Map to provide many more implementations, new collections and abstract base classes. |
Configuration | Proper | Tools to assist in the reading of configuration/preferences files in various formats |
Compress | Proper | Defines an API for working with archives and compression formats including but not limited to: tar,gz, ar, cpio, zip and bzip2 files |
Daemon | Proper | Run (java) applications as windows service or UNIX daemon. |
DBCP | Proper | Database connection pooling services. |
Digester | Proper | XML-to-Java-object mapping utility. |
Proper | Simplify email sending with Java. Built on top of the Java Mail API. | |
Exec | Proper | A Java library to execute external processes from within a Java application. |
FileUpload | Proper | Makes it easy to add robust, high-performance, file upload capability to your servlets and web applications |
Functor | Proper | A functor is a function that can be manipulated as an object, or an object representing a single, generic function. |
IO | Proper | Utility classes, stream implementations, file filters and endian classes to assist in input/output operations. |
JCI | Proper | Java Compiler Interface |
JCS | Proper | Java Caching System |
JEXL | Proper | A velocity-esque expression interpreter |
Jelly | Proper | An XML-based scripting language. |
JXPath | Proper | Facilities for applying xpath expressions to graphs of objects of all kinds: Java beans, Maps, Servlet contexts, DOM etc. |
Lang | Proper | Common utilities that should be provided by the JDK, including String handling, Object and Date helpers, nested exceptions and enumerated types. |
Launcher | Dormant | A cross platform Java application launcher which eliminates the need for a batch or shell script to launch a Java class. |
Logging | Proper | A thin, modular bridging API with out-of-the-box support for the most well known logging systems. |
Math | Proper | Lightweight, self-contained mathematics and statistics components. |
Modeler | Dormant | Mechanisms to create Model MBeans compatible with JMX specification. |
Net | Proper | A collection of classes implementing various network protocols such as FTP, NNTP, SMTP, Telnet. |
Pool | Proper | A generic object pooling interface, a toolkit for creating modular object pools and several general purpose pool implementations. |
Proxy | Proper | A Java library for dynamic proxying |
SCXML | Proper | A Java implementation of State Chart XML (SCXML), currently a W3C Working Draft. |
Transaction | Dormant | Utility classes commonly used in transactional programming |
Validator | Proper | Components for user input validation |
VFS | Proper | Extensible framework to acces various filesystems through an unified api with implementations for e.g. sftp, smb, http, zip, ... |
Elsewhere at Apache ...
The following components were part of Apache Commons but have moved elsewhere:
Cactus: Cactus is a simple test framework for unit testing server-side java code (Servlets, EJBs, Tag Libs, Filters, ...). The intent of Cactus is to lower the cost of writing tests for server-side code.
Hivemind: HiveMind is a services and configuration microkernel. HiveMind allows you to create your application using a service oriented architecture.
HttpClient 3.x: Framework for working with the client-side of the HTTP protocol.
Naming: The Naming subproject will contain common JNDI code along with various JNDI providers.