[[Building-BuildingCamelfromSource]]
Building Camel from Source
~~~~~~~~~~~~~~~~~~~~~~~~~~

Camel uses http://maven.apache.org/[Maven] as its build and management
tool. If you don't fancy using Maven you can use your IDE directly or
Download a distribution or JAR.

[[Building-Prequisites]]
Prequisites
^^^^^^^^^^^

*Required:*

* Java
** 1.7 or 1.8 to build Camel 2.14 onwards
** 1.8 to build Camel 2.18 onwards

* https://github.com/takari/maven-wrapper[Maven Wrapper] is used and bundled with Camel 2.21 onwards.

* Otherwise, http://maven.apache.org/download.html[download and install Maven]
** Maven 3.1.1 or newer is required to build Camel 2.14 onwards
** Maven 3.2.5 or newer is required to build Camel 2.18 onwards
** Maven 3.3.3 or newer is required to build Camel 2.20 onwards

* Get the latest source from https://github.com/apache/camel/[Github]

*Optional:*

* http://www.princexml.com/download/[Prince] should be in the executable
PATH to generate the PDF documentation

[[Building-Mavenoptions]]
Maven options
^^^^^^^^^^^^^

To build camel maven has to be configured to use more memory

[[Building-UnixLinuxMac]]
Unix/Linux/Mac

[source,text]
------------------------------------------------------------
export MAVEN_OPTS="-Xms2048m -Xmx3584m"
------------------------------------------------------------


[[Building-Windows]]
Windows

[source,text]
-------------------------------------------------------
set MAVEN_OPTS="-Xms2048m -Xmx3584m"
-------------------------------------------------------

[[Building-Anormalbuild]]
A normal build
^^^^^^^^^^^^^^

[source,text]
-----------------
mvn clean install
-----------------

[[Building-Anormalbuildwithoutrunningtests]]
A quick build without running tests
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The following skips building the manual, the distro and does not execute
the unit tests.

[source,text]
-------------------------------
mvn clean install -Pfastinstall
-------------------------------

[[Building-Anormalbuildwithoutrunningtestsbutcheckstyleverificationenabled]]
A normal build without running tests but checkstyle verification enabled
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

[source,text]
-------------------------------------------
mvn clean install -Pfastinstall,sourcecheck
-------------------------------------------

[[Building-UsinganIDE]]
Using an IDE
^^^^^^^^^^^^

If you prefer to use an IDE then you can auto-generate the IDE's project
files using maven plugins. e.g.

[[Building-IntelliJ]]
IntelliJ
++++++++

[source,text]
-------------
mvn idea:idea
-------------

[[Building-Eclipse]]
Eclipse
+++++++

There are several ways to import the projects into Eclipse.

[[Building-m2e]]
m2e

Starting with Camel 2.14.0, Camel can be imported into Eclipse using m2e
Maven integration.

Before you start: It is important to run Eclipse with at least 4 GB of
heap memory, otherwise the import process will fail. To increase the
heap size, edit the "eclipse.ini" file and set the -Xmx parameter as
follows:

*eclipse.ini*

[source,java]
---------
[...]
-Xms4G
-Xmx4G
---------

TIP: For a better experience some users set 8 GB when all projects are loaded and opened.

[[Building-CloningtheGitRepository]]
Cloning the Git Repository 

Either follow instructions about getting the latest
source, or clone the Git repository with Eclipse by
selecting *File -> Import -> Git / Projects from Git* and *Clone URI*.
Provide all repository details in the import wizard and clone the
repository into a directory outside of the Eclipse workspace. Once
cloning has completed, exit the import project wizard (i.e. simply
select cancel when asked to select "Wizard for project import").

[[Building-ImportMavenProjects]]
Import Maven Projects

Import Camel projects as Maven projects using m2e by selecting *File ->
Import -> Maven -> Existing Maven Projects*. Point the wizard to the
root directory of the cloned repository. Eclipse will analyze all Camel
projects and eventually present the following summary:

image:building.data/camel-eclipse-m2e-import.png[image]

Simply confirm the import of all projects by clicking *Finish*. The
import process will create Eclipse projects and automatically set up
build paths using dependency details provided by the pom.xml files. Once
completed, all Camel projects will be available in your workspace:

image:building.data/camel-eclipse-m2e-import-completed.png[image]

NOTE: As you can see main project is combined with multiple sub projects/modules (e.g. components, archetypes, tooling etc.). Many sub projects/modules are again categorized or packaged with another layer of sub modules and so on. Developers can import project/module which is relevant to them and work on it instead importing entire project which will consume memory and eventually slow down Eclipse. This approach is not only easy to import and work in eclipse as well as easy to test. Lets say you do some code changes in the camel-ftp component, then you can run the checks from within this directory.

[[Building-maven-eclipse-plugin]]
maven-eclipse-plugin

The maven-eclipse-plugin can be used to generate the
.classpath/.project/.settings file that Eclipse need. To do this, run:

[source,text]
----------------------------------------
mvn process-test-sources eclipse:eclipse
----------------------------------------

or

[source,text]
-------------------------------------------------------------------
mvn -Psetup.eclipse -Declipse.workspace.dir=/path/to/your/workspace
-------------------------------------------------------------------

The latter is recommended as it would completely setup the workspace for
you as well as provide options to wire in other projects also found in
your workspace.

After running the above command, from within Eclipse, do *File -> Import
-> Existing Projects into Workspace*, select the root camel checkout
location and Eclipse should find all the projects.

[[Building-AddingCamelEclipsetemplatestoyourworkspace]]
Adding Camel Eclipse templates to your workspace

The above mentioned setup.eclipse profile does a few additional things
to your workspace:

1.  Adds the Camel code templates (see
http://janstey.blogspot.com/2008/08/eclipse-templates-for-apache-camel.html[here])
2.  Sets the M2_REPO variable in the workspace that points to your local
Maven repository (i.e., `~/.m2/repository` on Unix and
`c:\Documents and Settings\<user>\.m2\repository` on Windows) which
allows the jars to be resolved.

[[Building-Hint:specifytheworkspacelocationinyour.m2/settings.xml]]
Hint: specify the workspace location in your .m2/settings.xml

You can add a profile to your .m2/settings.xml to specify your eclipse
workspace location so you can avoid having to type that each time you
need to update the projects.

[source,xml]
--------------------------------------------------------------------------
<profiles>
    <profile>
        <id>setup.eclipse</id>
        <properties>
            <eclipse.workspace>/path/to/your/workspace</eclipse.workspace>
        </properties>
    </profile>
</profiles>
--------------------------------------------------------------------------

[[Building-Buildingwithcheckstyle]]
Building with checkstyle
^^^^^^^^^^^^^^^^^^^^^^^^

To enable source style checking with checkstyle, build Camel with the
-Psourcecheck parameter

[source,text]
-------------------------------
mvn -Psourcecheck clean install
-------------------------------

[[Building-Buildingsourcejars]]
Building source jars
^^^^^^^^^^^^^^^^^^^^

If you want to build jar files with the source code, that for instance
Eclipse can important so you can debug the Camel code as well. Then you
can run this command from the camel root folder:

[source,text]
------------------------------------------
mvn clean source:jar install -Pfastinstall
------------------------------------------

[[Building-Workingwithkaraffeatures]]
Working with karaf features
^^^^^^^^^^^^^^^^^^^^^^^^^^^

If you change anything in the features.xml from `platform/karaf` you can
run a validation step to ensure the generated features.xml file is
correct. You can do this running the following maven goal from the
`platform` directory.

[source,text]
----------------------------
mvn clean install -Pvalidate
----------------------------

[[Building-ExecutingunittestsusingEkstazi]]
Executing unit tests using Ekstazi
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Normally, when you execute the unit tests during your development cycle
for a particular component, you are executing all the tests each time.
This may become inefficient, when you are changing one class and the
effect of this change is limited within the component having many unit
tests. Ekstazi is a regression testing tool that can keep track of the
test results and the changed classes so that unaffected tests can be
skipped during the subsequent testing. For more details of Ekstazi,
please refer to the Ekstazi page
at http://www.ekstazi.org[http://www.ekstazi.org].

To use Ekstazi, you can run the tests with the maven profile ekstazi.

[source,text]
------------------
mvn test -Pekstazi
------------------

[[Building-SeeAlso]]
See Also
^^^^^^^^

* Running Unit Tests
* Source
* Examples
