1
0
Fork 0
mirror of https://github.com/vanitasvitae/Smack.git synced 2024-11-22 03:52:06 +01:00
Smack/resources
Florian Schmaus 1e57f1c659 Activate checkstyle and add missing license headers
Delete also all "All rights reserved" statements, as they are
unnecessary and conflict with checkstyle's header check. Delete unused
imports.
2014-02-17 20:09:55 +01:00
..
eclipse Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
releasedocs Activate checkstyle and add missing license headers 2014-02-17 20:09:55 +01:00
gradle.properties.example Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
README.html Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
sample.providers Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
	<title>Smack Source Distribution</title>
    <style type="text/css">
        BODY {
            font-size : 100%;
        }
        BODY, TD, TH {
            font-family : tahoma, verdana, arial, helvetica, sans-serif;
            font-size : 0.8em;
        }
        A:hover {
            text-decoration : none;
        }
        TT {
            font-family : courier new, monospace;
            font-weight : bold;
            color : #060;
        }
        PRE, CODE {
            font-family : courier new, monospace;
            font-size : 100%;
        }
    </style>
</head>

<body>

<font size=4>
Smack Source Distribution<br>
</font><br>
<p>

This document provides detailed information for developers that wish to 
compile and make changes to the Smack source code.

<p>For additional developer resources, please visit: 
<a href="http://www.igniterealtime.org/projects/smack">
http://www.igniterealtime.org/projects/smack</a>. The Smack build process is based on Gradle. Visit the
<a href="http://www.gradle.org">Gradle website</a>
for more information and downloads.
<p>
This documentation is divided into two sections:
<ol>
	<li> <a href="#setup">Setup</a> -- how to setup your environment for Smack development.
	<li> <a href="#tasks">Build tasks</a> -- tasks that can be performed using the build program.
</ol>

<p><a name="setup"><b><font color="#0066cc">1.</font> Setup Your Environment</b></a><p>

Getting your machine ready for Smack development requires a few steps. Wherever
possible, instructions are provided for both Unix/Linux and Windows users.
<p>
<b><a name="javaSetup">Configure Java</a></b>
<ul>
	Java 6 (JDK 1.6 or later) must be installed and setup on your machine. To test the installation,
	open a shell in a Unix or a MS-DOS prompt in Windows. Check your version of
	Java with "java -version".
	If Java isn't installed, download a copy from the 
	<a href="http://java.oracle.com/">Java website</a>.
</ul>

<b><a name="antSetup">Configure Gradle</a></b>
<ul>
Download Gradle from the <a href="http://www.gradle.org">Gradle website</a>. Follow
the setup instructions for your operating system.
</ul>

<p><b><a name="checkout">Test the Build Script</a></b><p>
<ul>

<p>
Now, invoke the build tool to compile the Smack source code

<p>
</font><code>gradle build</code><font face="verdana, arial, helvetica" size=2>
<p>

If the build tool is invoked correctly and Smack compiles, you've correctly
configured your copy of the Smack developer distribution.
</font>
</ul>

<p><b>Finished!</b><p>
<ul>
If you've gotten this far, you've finished setting up the Smack developer
distribution. Now, read below to learn about all of the tasks that you can perform
with the build tool.
</ul>

<br><br>
	
<p><b><a name="tasks"><font color="#0066cc">2.</font> Gradle Tasks</a></b><p>

	The list of build tasks is below.

	<br><br>

	For a list of the commands and a brief description from the command line, type
	<code>gradle tasks</code>. For more complete help, read the documentation below.

	<br><br>

	To execute a build task, type <code>gradle [options] targetname</code> where "targetname" is
	one of the targets listed below:
	
	<ul>
        <li><a href="#build">build</a>
        <li><a href="#javadoc">javadocAll</a>
        <li><a href="#clean">clean</a>
        <li><a href="#eclipse">eclipse</a>
		<li><a href="#projects">projects</a>
	</ul>
<p>
Each task is documented with a syntax guide and description. Optional paramaters 
for each task are enclosed with braces.
	
<p><b><a name="build">build</a></b>
<ul>
<i>Syntax:</i><p>

<code>
gradle build <br>
</code>

<p><i>Description:</i></p>

Compiles all the Smack source code and run the test suite. The
artifacts of the sub-projects can be found
at <code>&lt;subprojectDir&gt;/build/libs</code>

<p>[<a href="#tasks">return to task list</a>]
</ul>

<p><b><a name="javadoc">javadocAll</a></b>
<ul>
<i>Syntax:</i><p>

<code>
gradle javadocAll<br>
</code>

<p><i>Description:</i></p>

JavaDocs all Smack source code and saves it under <code>build/javadoc</code>.

<p>[<a href="#tasks">return to task list</a>]
</ul>

<p><b><a name="clean">clean</a></b>
<ul>
<i>Syntax:</i><p>

<code>
gradle clean<br>
</code>

<p><i>Description:</i></p>

Cleans your Smack distribution directory by deleting compiled class
files and artifacts.

<p>[<a href="#tasks">return to task list</a>]
</ul>

<p><b><a name="eclipse">eclipse</a></b>
<ul>
<i>Syntax:</i><p>

<code>
gradle eclipse<br>
</code>

<p><i>Description:</i></p>

Generates Eclipse configuration files for every project. After
running <code>gradle build eclipse</code> you can import Smack in
Eclipse by selecting <code>File</code> &rarr; <code>Import...</code>
&rarr; <code>Existing Projects into Workspace</code>
<br>
Make sure to check "<code>Search for nested projects</code>". It may be
also a good idea to create a working set for Smack, and add all Smack
projects to that working set.
<br>
Note that it's recommended to also call the <code>build</code> target
when generating the Eclipse files, or else Eclipse may not find all
requirements.

<p>[<a href="#tasks">return to task list</a>]
</ul>

<p><b><a name="projects">projects</a></b>
<ul>
<i>Syntax:</i><p>

<code>
gradle projects<br>
</code>

<p><i>Description:</i></p>

Show all Smack projects and  their description.

<p>[<a href="#tasks">return to task list</a>]
</ul>


</body>
</html>