Building HttpComponents Core 
============================

(1) Requisites
--------------
HttpCore utilizes Maven 2 as a distribution management and packaging tool. Version 2.0.7 or above is
recommended. Maven 2 requires JDK 1.4 or above in order to execute. However, JDK 1.5 or above is
required in order to compile some modules (such as NIO extensions) and we generally recommend a 1.5 
compatible JDK be used to build HttpComponents Core packages.

Maven installation and configuration instructions can be found here:

http://maven.apache.org/run-maven/index.html

(2) Executing test cases

Execute the following command in order to compile and test the components

mvn test

(3) Building packages 

Execute the following command in order to build the JAR packages

mvn package

The resultant packages can be found in the target folders of their respective modules

module-main/target/httpcore-<VERSION>.jar
module-nio/target/httpcore-nio-<VERSION>.jar
module-osgi-bundle/target/org.apache.httpcomponents.httpcore_<VERSION>.jar

where <VERSION> is the release version

(4) Building distribution assemblies 

Execute the following command in order to build the distribution assemblies

mvn package assembly:assembly

(5) Building documentation 

Execute the following command in order to generate javadoc:

mvn javadoc:javadoc

Execute the following command in order to generate the tutorial in html and pdf formats

mvn docbkx:generate-pdf docbkx:generate-html

(6) Building project web site 

Execute the following command in order to generate the project web site:

mvn site -Dclover.license=<path>/clover.license

where <path> is a full path to Clover license file

ASF committers can obtain a copy of Clover license donated to the ASF from the SVN repository
at the following location:

https://svn.apache.org/repos/private/committers/donated-licenses/clover

