| Building HttpComponents Client |
| ============================ |
| |
| (1) Requisites |
| -------------- |
| JDK 1.5+ is required in order to compile and run HttpClient. |
| |
| HttpCore utilizes Maven 2 as a distribution management and packaging tool. |
| Version 2.2.1 or later is recommended. Maven 3.0.x can also be used |
| to build HttpClient, however it is known to be incompatible with the Clover |
| plugin used to generate web site content. |
| |
| 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 and install |
| them to the local repository: |
| |
| mvn install |
| |
| The JAR packages can be found in the target folders of their respective modules |
| |
| httpclient/target/httpclient-<VERSION>.jar |
| httpmime/target/httpmime-<VERSION>.jar |
| httpclient-cache/target/httpclient-cache-<VERSION>.jar |
| fluent-hc/target/fluent-hc-<VERSION>.jar |
| httpclient-osgi/target/org.apache.httpcomponents.httpclient_<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 |
| |