Before setting up a complete project/extension, you need to have knowledge of how to install a Maven project.

{docbook}
<citetitle>
<para>
<emphasis role="bold">
Requirements
</emphasis>
</para>
</citetitle>
{docbook}

* JDK (Java Development Kit) 6.0 
* SVN 1.6+
* Maven 2.2.1+
* Tomcat 6.0.32 or JBoss EAP 5.1.1

{docbook}
<citetitle>
<para>
<emphasis role="bold">
Install and configure Maven
</emphasis>
</para>
</citetitle>
{docbook}


You need to add a system environment variable _MAVEN\_OPTS_ (it could be in a _.profile_ startup script on Linux/MacOS operating systems or in the global environment variables panel on Windows).

* Windows:*

{code}
set MAVEN_OPTS=-Xshare:auto -Xms128M -Xmx1G -XX:MaxPermSize=256M
{code}

* Linux/MacOS:
{code}
export MAVEN_OPTS="-Xshare:auto -Xms128M -Xmx1G -XX:MaxPermSize=256M"
{code}

{docbook}
<citetitle>
<para>
<emphasis role="bold">
Maven settings
</emphasis>
</para>
</citetitle>
{docbook}


*1.* Save the _settings.xml_ file to the _HOME/.m2/settings.xml_ path.

*2.* Edit and change the _local-properties_ profile, including:

* _exo.projects.directory.dependencies_ contains the application servers, and Openfire.

* each _exo.projects.app.AS-NAME.version_ contains the name and version of the application servers.

{note}
If the _settings.xml_ file has been existing, you can merge them. You will need the followings:

* The _local-properties_ profile, which defines properties, is used to build application server distributions of our products.

* The [repository|http://repository.exoplatform.org/public] to download our dependencies.

{note}
In Linux environments, the ulimit limits the system-wide resource used. When running eXo Platform, you may get the error message about "Too many open files" because the ulimit had limited the opened files.
By default, the number of open files is limited to "1024". You should execute the command "ulimit -n 8196" as root before starting the server to avoid this issue.
{note}

{docbook}
<para>
<prompt>
    <emphasis role="bold">See also</emphasis>
</prompt>
</para>
{docbook}

[Create your extension project|#DEV.CreateYourOwnPortal.CreateExtensionProject]

[Create a custom look and feel|#DEV.CreateYourOwnPortal.CreateCustomLookAndFeel]