blob: 8158090e22fd289519eaa892de4a7e577da01fcb [file] [log] [blame]
<html>
<head>
<meta http-equiv="content-type" content="">
<title>Developing Apache Axis2</title>
<link href="css/axis-docs.css" rel="stylesheet" type="text/css" media="all">
</head>
<body lang="en">
<h1>Developing Apache Axis2</h1>
<p>This document provides information on how to use SVN to get an SVN
checkout/update, make commits to the repository, etc., in the process of
contributing to Apache projects (specifically Axis2). Instructions on
configuring IDEs for development and using Maven to build the project is also
included here.</p>
<h2>Content</h2>
<ul>
<li><a href="#svn">Working with Subversion (SVN)</a></li>
<li><a href="#checkout">Checkout Axis2 from Subversion</a></li>
<li><a href="#maven">Installing Maven 1</a></li>
<li><a href="#ide">Configuring your IDE</a></li>
</ul>
<a name="svn"></a>
<h2>Working with Subversion (SVN)</h2>
<p>The Axis2 development team uses Subversion (SVN) for source control.
Subversion is a compelling replacement for CVS, developed under the auspices
of the Tigris community and licensed under an Apache compatible license. To
learn more about Subversion or to download the latest distribution, visit the
<a href="http:///subversion.tigris.org" target="_blank">Subversion project
site</a>. If you are looking for guidance on setting up and installing
Subversion, please read the ASF <a
href="http://www.apache.org/dev/version-control.html" target="_blank">Source
Code Repositories page</a>.</p>
<a name="checkout"></a>
<h2>Checkout Axis2 from Subversion</h2>
<p>To check out the latest version of Axis2 from the Foundation's Subversion
repository, you must use one of the following URLs depending on your level of
access to the Axis2 source code:</p>
<ul>
<li><b>If you are not a committer:</b> <a
href="http://svn.apache.org/repos/asf/webservices/axis2/trunk/java"
target="_blank">http://svn.apache.org/repos/asf/webservices/axis2/trunk/java</a></li>
<li><b>If you are a committer:</b> <a
href="https://svn.apache.org/repos/asf/webservices/axis2/trunk/java"
target="_blank">https://svn.apache.org/repos/asf/webservices/axis2/trunk/java</a></li>
</ul>
If you are a committer, make sure that you have selected an svnpasswd. To do
this, you must log into svn.apache.org. For more information, please read the
ASF <a href="http://www.apache.org/dev/version-control.html"
target="_blank">Source Code Repositories page</a>.
<p>Once you have successfully installed Subversion, you can check out Axis2
trunk by following these steps:</p>
<ol type="1">
<li>Run <strong>svn co &lt;repository URL&gt; axis2</strong> where the
repository URL is one of the URLs from the previous list.</li>
<li>This step will check out the latest version of the Axis2 Java codebase
to a directory named "axis2". The second parameter to the <strong>svn
co</strong> selects a directory to create on your local machine. If you
want to checkout Axis2 to a different directory, feel free to change
axis2 to any other directory name.</li>
<li>To update your working copy to the latest version from the repository,
execute the <strong>svn update</strong> command.</li>
<li>If you would like to submit a patch, you can execute <strong>svn
diff</strong> to create a unified diff for submission to the Axis2 JIRA
issue tracker.</li>
</ol>
<a name="maven"></a>
<h2>Installing Maven 1</h2>
<p>Axis2's build is based on Maven 1. Maven is a build system that allows
for the reuse of common build projects across multiple projects. For
information about obtaining, installing, and configuring Maven 1, please see
the <a href="http://maven.apache.org" target="_blank">Maven project page</a>.
To use Maven to build the Axis2 project, follow these simple steps:</p>
<ol type="1">
<li>Install <a href="http://maven.apache.org/maven-1.x/"
target="_blank">Maven1</a>. Refer to the <a
href="http://maven.apache.org/maven-1.x/start/install.html">instructions</a>.
<ul>
<li>Create a MAVEN_HOME environment variable.</li>
<li>Add MAVEN_HOME/bin to your PATH</li>
</ul>
</li>
<li>Go to the axis2 folder in the command prompt and type
<strong>maven</strong>.</li>
<li>Maven will then automatically download all the jars, compile, test and
build the Axis2 deliverables.</li>
</ol>
<a name="ide"></a>
<h2>Configuring your IDE</h2>
<p>The Axis2 development team uses a variety of development tools from vi to
emacs to eclipse to Intellij/IDEA. The following section is not an
endorsement of a specific set of tools, it is simply meant as a pointer to
ease the process of getting started with Axis2 development.</p>
<ul>
<li><strong>Intellij IDEA-</strong> type <strong>maven
idea:multiproject</strong>. Generates the necessary IDEA .ipr, .iml and
.iws project files</li>
<li><strong>eclipse</strong>- type <strong>maven multiproject:goal
-Dgoal=eclipse</strong> Then in Eclipse, setup a Classpath Variable for
MAVEN_REPO, and select File &gt; Import &gt; Existing Projects into
Workspace &gt; Select root directory. Selecting the root of the Axis
source discovers all the modules and allows them to be imported as
individual projects at once.</li>
</ul>
</body>
</html>