+ ------
+ Setting up a Taxonomic Editor development environment
+ ------
+ n.hoffmann
+ ------
+
+
+Setting up a Taxonomic Editor development environment
+
+ This document describes all steps necessarry to create a development environment to develop the EDIT Taxonomic Editor. If you are looking for
+ instructions on how to install the EDIT Taxonomic Editor please consult the {{{./manual.html} manual}}.
+
+ <Table of Contents>
+
+%{toc|section=0|fromDepth=2|toDepth=3}
+
+* Requirements
+
+ The current version of the EDIT Taxonomic Editor is developed against Eclipse Indigo for RCP developers.
+
+
+* Checking out the sources
+
+ Use subversion to check out the sources from the EDIT repository to a location on your development machine.
+
+---
+$ svn co http://dev.e-taxonomy.eu/svn/trunk/taxeditor
+---
+
+ This will leave you with a directory <<<taxeditor/>>> containing everything that is needed. We will have a look at the contents later on.
+
+* Setting up eclipse
+
+ * Start up eclipse (make sure you have the required version installed) and open a workspace.
+
+ * Open up the Import Wizard via <File -\> Import...> from the menu
+
+ * Choose <General -\> Existing projects into Workspace > and click next.
+
+ * Check <Select Root Directory> and browse to the <<<taxeditor/>>> directory. After confirming the directory selection dialog, the <Projects> list should contain a number of projects all starting with
+ <<<eu.etaxonomy.taxditor>>> which should be checked for import.
+
+ * Click <Select All> to finish the wizard and import the projects into your workspace.
+
+ You should now be able to see the taaxeditor projects in your workspace.
+
+ * The eclipse installation may be missing the following plugins which have to be installed via their update site:
+
+ * <SWTBot> <<API>> plugin from update site: <http://download.eclipse.org/technology/swtbot/releases/latest/>
+
+ * <Modeling-\>><<Graphical Editing Framework Zest Visualization Toolkit SDK>> from update site: <http://download.eclipse.org/releases/indigo>
+
+ * <Nebula Release Individual Widgets-\>> <<Nebula CompositeTable Widget>> from update site: <http://download.eclipse.org/technology/nebula/snapshot>
+
+ * To Install the plugins use the Eclipse-Install-Wizard via <Help -\> Install new Software> and paste the URL in the <Work With> row. Click <Add> and use the Filter to find, check and install plugins.
+
+* Dependencies
+
+ The Taxonomic Editor uses <maven 3> for convenient configuration and automation of common tasks,
+ such as resolving dependencies and automating builds.
+
+ The <<<latest snapshot branch>>> of the Taxonomic Editor is programmed against the latest
+ SNAPSHOT version of the cdmlibrary. Because that dependency will change quickly, we
+ do not imclude it with the other dependencies but rather install it with maven.
+
+ In order to do that you have to run <<<mvn validate>>> in your <<<taxeditor/eu.etaxonomy.taxeditor.cdmlib>>> directory.
+
+---
+$ cd taxeditor/eu.etaxonomy.taxeditor.cdmlib/
+$ mvn validate
+---
+
+ This will take some time, as maven will download the required dependencies.
+ After maven has finished follow these steps:
+
+
+ To get rid of the errors, you have to update the classpaths of all plugin projects. To do this right-click any of the <taxeditor-*> projects and choose <PDE Tools -\> Update Classpath...>. Click <Select All> in the dialog and confirm. After a rebuild of your entire workspace all errors should be gone and you are ready to go.
+
+ <<Note>>: If you have also checked out the cdmlib sources you may have to run <<<mvn install>>> on the cdmlib project beforehand to update the cdmlib jars in your local maven repository.
+
+* Bundle overview
+
+ Let's have a quick look at the projects:
+
+** <eu.etaxonomy.taxeditor.store>
+
+ This package communicates with cdmlib-service directly, offering all services, basic operations on cdm data as well as import export functionality. Database and user management is also contained in this package.
+
+** <eu.etaxonomy.taxeditor.navigation>
+
+ The <Taxon Navigator> as well as the <Search> view are located in this plugin.
+
+** <eu.etaxonomy.taxeditor.editor>
+
+ Everything that has to do with editing a taxon or data that is connected to a taxon resides in this plugin. This includes the <Name Editor>, the <Details View>,
+ the <Supplemental View>, the <Descriptive Data View> as well as the <Media View>. All interface elements that are used in the <taxeditor-bulkeditor> plugin are
+ also located here.
+
+** <eu.etaxonomy.taxeditor.bulkeditor>
+
+ The different bulkeditors are in this plugin.
+
+** <eu.etaxonomy.taxeditor.printpublisher>
+
+ This plugin is a frontend and GUI for the <cdmlib-print> module. Please see the {{{http://wp5.e-taxonomy.eu/printpublisher/}according documentation}} for further information.
+
+** <eu.etaxonomy.taxeditor.application>
+
+ This plugin bundles all the previous plugins into an application and configures the look and feel.
+
+** <eu.etaxonomy.taxeditor.cdmlib>
+
+ As said before, <cdmlib> dependecies reside in this plugin. Please also note that this plugin does not contain any sourcecode.
+
+** <eu.etaxonomy.taxeditor.feature.platform>
+
+ A feature containing all dependencies for the eclipse platform.
+
+** <eu.etaxonomy.taxeditor>
+
+ The product configuration for the standalone application.
+
+** <eu.etaxonomy.taxeditor.test>
+
+ Automated GUI Tests for the Taxonomic Editor that can be run with {{{http://swtbot.com/}SWTBot}}.
+
+* Creating a launch configuration
+
+ To start the Taxonomic Editor from your newly created development environment you need to create a launch configuration.
+
+ * Expand <eu.etaxonomy.taxeditor> and open <<<eu.etaxonomy.taxeditor.product>>>
+
+ * In the <Testing> section (down left) click on <Launch an Eclipse application in Debug mode>
+
+ The Taxonomic Editor should launch. Note: You might want to tweak the launch configuration, e.g. increase the memory.
+
+* Where do I go from here?
+
+ Please read the {{{http://dev.e-taxonomy.eu/trac/wiki/TaxonomicEditorDev}wiki}} for how-to's and code examples.