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

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

where <VERSION> is the release version

(4) Building documentation 

Execute the following command in order to generate javadoc:

mvn javadoc:aggregate

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

mvn docbkx:generate-pdf docbkx:generate-html

(5) Building distribution assemblies 

Execute the following command in order to build the distribution assemblies

mvn package assembly:assembly

(6) Fix EOL in source files

Fix the archive files so the source files have the correct EOL settings:

mvn antrun:run

(7) Building project web site 

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

mvn site -Dmaven.clover.licenseLocation=<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

