adding note on using the localrepository profile
[taxeditor.git] / src / site / apt / getting-started.apt
index eaffe2a66e493a00acc14f5507ba8409f78f39fd..6edc5a1d858915b72c516f541d68b7c47355c439 100644 (file)
@@ -7,7 +7,7 @@
 
 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 
+       This document describes all steps necessary 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>
@@ -16,11 +16,7 @@ Setting up a Taxonomic Editor development environment
        
 * Requirements
 
-       Please make sure that you have met the following requirements.
-       
-       * CDM Library development environment set up on your machine (please follow the instructions on {{{http://wp5.e-taxonomy.eu/cdmlib/getting-started.html#Developing_the_CDM_Library}how to install a CDM Library development environment}})
-       
-       * Eclipse PDE Version >= 3.6
+       The current version of the EDIT Taxonomic Editor is developed against Eclipse Indigo for RCP developers.
        
        
 * Checking out the sources
@@ -35,94 +31,115 @@ $ svn co http://dev.e-taxonomy.eu/svn/trunk/taxeditor
 
 * Setting up eclipse
 
-       The Taxonomic Editor uses maven for convenient configuration and automation of common tasks, such as setting up eclipse. 
-       
----
-$ cd taxeditor/
-$ mvn eclipse:eclipse
----
-       
-       This will take some time, as maven will download the required dependencies and configure the projects. After maven has finished follow these steps:
-       
        * 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.
+       * 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.
        
-       * Click <Select All> and finish the wizard.
+       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.
        
-       The package exporer should show a bunch of projects. Although it will also show a bunch of errors, so please read on.
+* Dependencies
        
+       The Taxonomic Editor uses <maven 3> for convenient configuration and automation of common tasks, 
+       such as resolving dependencies and automating builds.
        
-* Initializing the cdmlib plugin
+       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.
 
-       The <cdmlib-plugin> project contains all dependencies needed for the CDM Library to work except the <<<cdmlib-*>>> artifacts itself. Therefore the      
-       <<<cdmlib-plugin>>> project will show an error. In order to include these artifacts the project contains a shell (and bash) script to copy these from your local maven repository. Please make sure, that the <<<cdmlib-*>>> artifacts exist in your repository.
-       
 ---
-$ cd taxeditor/cdmlib-plugin/
-$ ./_makeSources.sh
+$ cd taxeditor/eu.etaxonomy.taxeditor.cdmlib/
+$ mvn validate
 ---
 
-       Refresh the <<<cdmlib-plugin>>> project; the errors should be gone.
+    The maven pom.xml provides a special profile which you may want to use if you are developing the cdmlib at the same time. This profile, named <<<local-repository>>>, causes maven to always use the local maven repository, so the latest changes to the cdmlib which have been installed locally by <<<mvn install>>>  will be used. In order to use this profile you would execute the validate gloal differently:
+
+ ---
+ $ mvn -P local-repository  -Dlocalrepo=/home/${youUserName}/.m2/repository validate
+ ---
+
+       This will take some time, as maven will download the required dependencies.
+       After maven has finished follow these steps:
        
-       <<Note:>> This will change in the very near future as these dependencies will also be managed by maven.
+       
+       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.
 
-       After this you have to update the classpaths of all plugin projects as well. 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:
        
-** <taxeditor-store>
-
+** <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.
        
-** <taxeditor-navigation>
+** <eu.etaxonomy.taxeditor.navigation>
 
        The <Taxon Navigator> as well as the <Search> view are located in this plugin.
 
-** <taxeditor-editor>
+** <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.
 
-** <taxeditor-bulkeditor>
+** <eu.etaxonomy.taxeditor.bulkeditor>
 
        The different bulkeditors are in this plugin.
 
-** <taxeditor-printpublisher>
+** <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.
 
-** <taxeditor-application>
+** <eu.etaxonomy.taxeditor.application>
 
        This plugin bundles all the previous plugins into an application and configures the look and feel.
 
-** <taxeditor-cdmlib-plugin>
+** <eu.etaxonomy.taxeditor.cdmlib>
 
        As said before, <cdmlib> dependecies reside in this plugin. Please also note that this plugin does not contain any sourcecode.
 
-** <taxeditor-feature-platform>
+** <eu.etaxonomy.taxeditor.feature.platform>
 
        A feature containing all dependencies for the eclipse platform.
 
-** <taxeditor-feature-product>
+** <eu.etaxonomy.taxeditor>
 
-       A feature configuring the standalone application and bundling all plugins and dependencies.
+       The product configuration for the standalone application.
+
+** <eu.etaxonomy.taxeditor.test>
+       
+       Automated GUI Tests for the Taxonomic Editor that can be run with {{{http://eclipse.org/swtbot/}SWTBot}}.
 
 * Creating a launch configuration
 
        To start the Taxonomic Editor from your newly created development environment you need to create a launch configuration.
        
-       * Expand <taxeditor-feature-product> and open <<<taxeditor.product>>>
+       * 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.
+       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.