====== How to join the Xplo project ======
Xplo is part of the **AMAPstudio project** developped at the AMAP laboratory. In order to join the **Xplo project** and integrate their model(s) in Xplo, modellers should follow the next steps:
===== 1. Who can join the Xplo project ? =====
The Xplo software can host various types of plants / trees fine architecture growth models, possibly linked to biophysical models (radiative balance, biomechanics...). The core part of the software is free to make it easy for partners to join Xplo.
**Any interested scientist can contact the [[mailto:sgriffon@cirad.fr|Xplo team]]** to discuss the interest for him to become a Xplo modeller in accordance with the 'AMAPstudio charter'. This implies that the scientist will be helped to become a beginner developer to be able to do the integration job by himself with simple tools, with support at starting time and then when he needs help.
The Xplo developers are skilled in software development and not in modelling. The help will concern the **integration** of the model within the Xplo software and **NOT the model creation** by itself.
===== 2. Accept the AMAPstudio charter =====
Xplo is a sub-project of the AMAPstudio project.
[[https://amapstudio.cirad.fr/doku.php?id=charter|The AMAPstudio charter]] explains the roles and rules for all the members of the project. It must be read and accepted by all members.
===== 3. Install Java SE 6 (JDK) =====
**Under Windows**:
* Download and install the Java Developpement Kit, Standard Edition (JDK and NOT JRE) version 1.6 : https://java.sun.com/javase/downloads/index.jsp
* Update the PATH environment variable according to your installation directory
Click Start > Control Panel > System on Windows XP or Start > Settings > Control Panel > System > Advanced > Environment Variables.
Add the location of the bin/ folder (the 'java path') of the JDK into the 'System Variables' > PATH (or in case of trouble in the 'User Variables' > PATH).
A typical value for the 'java path' is:
C:\Program Files\Java\jdk1.6.0_\bin
We suggest you add this 'java path' at the beginning of the 'system PATH', followed by a ';'
You should have a single bin/ directory for a single JDK in the path at a time. Those following the first instance are ignored. If one is already present, update it to jdk1.6.0_\bin.
**Under Linux**:
Use your system installer (i.e. aptitude, apt-get, yum, urpmi...).
For instance, on Ubuntu :
sudo apt-get install sun-java6-jdk sun-java6-bin
===== 4. Create an amap-dev account =====
Xplo files are hosted on the amap-dev development server. To access to these files, you need to create an account on the server.
If you are not already a Xplo modeller and if you want to integrate a model in Xplo, please **contact the development team** (see section 1: Who can join the Xplo project ?). Otherwise your registration will not be validated.
Register yourself on: [[https://amap-dev.cirad.fr/account/register]].
Once your account has been validated by an administrator you can access to the Xplo project: [[https://amap-dev.cirad.fr/projects/show/Xplo]]
Your login/password will be used to access to SVN files, but also to manage Xplo on the amap-dev development server (e.g. ask for a bug correction / a new feature).
===== 5. Get a local copy of the project (svn checkout) =====
There are different methods to get the source codes of Xplo.
==== 5.1 SmartSVN (windows / linux / mac) ====
SmartSVN is a portable client written in Java to access to SVN repositories.
* Download and Install: https://www.syntevo.com/smartsvn/download.html
* Start SmartSVN
If SmartSVN asks for svnserve and svnadmin, click Cancel.
During installation, SmartSVN will ask you if you want to evaluate the Pro version. You can ignore this message (it may begin 'pro' and turn to 'common' after a while).
* Choose Check out project from repository
Quick Checkout:
URL: https://amap-dev.cirad.fr/svn/jeeb/trunk
Local directory: the directory you choose for your local copy (e.g. C:\AMAPstudio OR /home/coligny/java/AMAPstudio)
* Enter your login and password
**Note**: This is your new login password you entered when you registered on amap-dev
* Validate and finish
==== 5.2 TortoiseSVN (windows only) ====
This SVN client fully integrates in the Windows file manager by adding SVN related options in the right-click menu for directories and files under SVN.
To get a local copy (checkout) of the AMAPstudio project:
* Download and install TortoiseSVN: https://tortoisesvn.tigris.org/
* Open your file manager
* Create a container directory named 'AMAPstudio' and move into it
* Right-click and choose 'SVN Checkout...'
* URL of the repository: https://amap-dev.cirad.fr/svn/jeeb/trunk
* Check out dir: do not change (the 'AMAPstudio' directory)
* Validate
==== 5.3 Command line ====
* Install the 'svn' program (under Linux: sudo apt-get install subversion)
* In a shell, do
svn checkout --username login https://amap-dev.cirad.fr/svn/jeeb/trunk AMAPstudio
==== 5.4 Eclipse ====
For expert users only, no help provided here at this time.
===== 6. Usual Operations =====
**SVN update**: you should update your local copy every time you start to work on your project (every morning ?). Updating often helps reduce the number of conflicts.
**Complete project recompilation** is needed after an update, see section 7.
**SVN commit**: sends your local modifications to the server. Do not hesitate to commit often (if the local compilation is ok) in order to avoid conflicts. (every evening ?)
Subversion generates a unique revision number after each commit. Then you can easily recover your project in a particular state (in case of problems or incompatibility) => update to a particular revision.
==== 6.1 SmartSVN ====
* Open SmartSVN and open your project
* Make sure the highest directory (the install directory) is selected in the left arborescence
**To update your local copy...**
* Right-click on it and choose 'Update...'
* Validate the default options
* **Note**: in case of trouble during the commit operation, you may need to update to be able to re-commit.
* This will update your local copy to synchronize with the 'HEAD' revision in the SVN server (i.e. the most recent version).
**To commit your changes...**
* Check the 'View' menu: check 'Files from subdirectories' and uncheck the other options
* You will see only the files to be commited (added, removed, modified)
* Select them, right click, commit
* Enter a little message in english to tag your commit (useful for admin in case of trouble)
* Validate
==== 6.2 TortoiseSVN ====
* Open a file manager
* Find the install directory of your project
**To update your local copy...**
* Right-click on the name of the install directory and choose the 'SVN Update' option
* Validate the default options
* Check the update result in the TortoiseSVN dialog box
**To commit your changes...**
* Right-click on the name of the install directory and choose the 'SVN Commit' option
* Enter a little message in english to tag your commit (useful for admin in case of trouble)
* Validate
==== 6.3 Command line ====
* In a terminal, 'cd' inside the install directory, then
**To update your local copy...**
svn up
**To commit your changes...**
svn ci
// Enter a little message in english in the default editor, then Ctrl-O and Ctrt-X
===== 7. Recompile AMAPstudio and start Xplo =====
* Open a terminal (Dos prompt under windows, shell under linux)
* Go to the AMAPstudio install directory with cd
* Recompile the project
// Windows
ant compile
// Linux and Mac
sh ant compile
If you need a full recompilation
// Windows
ant clean compile
// Linux and Mac
sh ant clean compile
**Note**: this recompilation should be done after each update. If there are errors, please contact the Xplo team.
* Then you can launch Xplo.
The xplo.bat or xplo.sh scripts are used to start Xplo:
// Windows
xplo
// Linux and Mac
sh xplo.sh
**Note**: you may also use
ant run