1
|
------
|
2
|
Setting up a Taxonomic Editor development environment
|
3
|
------
|
4
|
n.hoffmann
|
5
|
------
|
6
|
|
7
|
|
8
|
Setting up a Taxonomic Editor development environment
|
9
|
|
10
|
This document describes all steps necessary to create a development environment to develop the EDIT Taxonomic Editor. If you are looking for
|
11
|
instructions on how to install the EDIT Taxonomic Editor please consult the {{{./manual.html} manual}}.
|
12
|
|
13
|
<Table of Contents>
|
14
|
|
15
|
%{toc|section=0|fromDepth=2|toDepth=3}
|
16
|
|
17
|
* Requirements
|
18
|
|
19
|
The current version of the EDIT Taxonomic Editor is developed against Eclipse Indigo for RCP developers.
|
20
|
|
21
|
|
22
|
* Checking out the sources
|
23
|
|
24
|
Use subversion to check out the sources from the EDIT repository to a location on your development machine.
|
25
|
|
26
|
---
|
27
|
$ svn co http://dev.e-taxonomy.eu/svn/trunk/taxeditor
|
28
|
---
|
29
|
|
30
|
This will leave you with a directory <<<taxeditor/>>> containing everything that is needed. We will have a look at the contents later on.
|
31
|
|
32
|
* Setting up eclipse
|
33
|
|
34
|
* Start up eclipse (make sure you have the required version installed) and open a workspace.
|
35
|
|
36
|
* Open up the Import Wizard via <File -\> Import...> from the menu
|
37
|
|
38
|
* Choose <General -\> Existing projects into Workspace > and click next.
|
39
|
|
40
|
* 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
|
41
|
<<<eu.etaxonomy.taxditor>>> which should be checked for import.
|
42
|
|
43
|
* Click <Select All> to finish the wizard and import the projects into your workspace.
|
44
|
|
45
|
You should now be able to see the taxeditor projects in your workspace.
|
46
|
|
47
|
* The eclipse installation may be missing the following plugins which have to be installed via their update site:
|
48
|
|
49
|
* <SWTBot> <<API>> plugin from update site: <http://download.eclipse.org/technology/swtbot/releases/latest/>
|
50
|
|
51
|
* <Modeling-\>><<Graphical Editing Framework Zest Visualization Toolkit SDK>> from update site: <http://download.eclipse.org/releases/indigo>
|
52
|
|
53
|
* <Nebula Release Individual Widgets-\>> <<Nebula CompositeTable Widget>> from update site: <http://download.eclipse.org/technology/nebula/snapshot>
|
54
|
|
55
|
* 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.
|
56
|
|
57
|
* Dependencies
|
58
|
|
59
|
The Taxonomic Editor uses <maven 3> for convenient configuration and automation of common tasks,
|
60
|
such as resolving dependencies and automating builds.
|
61
|
|
62
|
The <<<latest snapshot branch>>> of the Taxonomic Editor is programmed against the latest
|
63
|
SNAPSHOT version of the cdmlibrary. Because that dependency will change quickly, we
|
64
|
do not imclude it with the other dependencies but rather install it with maven.
|
65
|
|
66
|
In order to do that you have to run <<<mvn validate>>> in your <<<taxeditor/eu.etaxonomy.taxeditor.cdmlib>>> directory.
|
67
|
|
68
|
---
|
69
|
$ cd taxeditor/eu.etaxonomy.taxeditor.cdmlib/
|
70
|
$ mvn validate
|
71
|
---
|
72
|
|
73
|
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:
|
74
|
|
75
|
---
|
76
|
$ mvn -P local-repository -Dlocalrepo=/home/${youUserName}/.m2/repository validate
|
77
|
---
|
78
|
|
79
|
This will take some time, as maven will download the required dependencies.
|
80
|
After maven has finished follow these steps:
|
81
|
|
82
|
|
83
|
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.
|
84
|
|
85
|
<<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.
|
86
|
|
87
|
* Bundle overview
|
88
|
|
89
|
Let's have a quick look at the projects:
|
90
|
|
91
|
** <eu.etaxonomy.taxeditor.store>
|
92
|
|
93
|
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.
|
94
|
|
95
|
** <eu.etaxonomy.taxeditor.navigation>
|
96
|
|
97
|
The <Taxon Navigator> as well as the <Search> view are located in this plugin.
|
98
|
|
99
|
** <eu.etaxonomy.taxeditor.editor>
|
100
|
|
101
|
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>,
|
102
|
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
|
103
|
also located here.
|
104
|
|
105
|
** <eu.etaxonomy.taxeditor.bulkeditor>
|
106
|
|
107
|
The different bulkeditors are in this plugin.
|
108
|
|
109
|
** <eu.etaxonomy.taxeditor.printpublisher>
|
110
|
|
111
|
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.
|
112
|
|
113
|
** <eu.etaxonomy.taxeditor.application>
|
114
|
|
115
|
This plugin bundles all the previous plugins into an application and configures the look and feel.
|
116
|
|
117
|
** <eu.etaxonomy.taxeditor.cdmlib>
|
118
|
|
119
|
As said before, <cdmlib> dependecies reside in this plugin. Please also note that this plugin does not contain any sourcecode.
|
120
|
|
121
|
** <eu.etaxonomy.taxeditor.feature.platform>
|
122
|
|
123
|
A feature containing all dependencies for the eclipse platform.
|
124
|
|
125
|
** <eu.etaxonomy.taxeditor>
|
126
|
|
127
|
The product configuration for the standalone application.
|
128
|
|
129
|
** <eu.etaxonomy.taxeditor.test>
|
130
|
|
131
|
Automated GUI Tests for the Taxonomic Editor that can be run with {{{http://eclipse.org/swtbot/}SWTBot}}.
|
132
|
|
133
|
* Creating a launch configuration
|
134
|
|
135
|
To start the Taxonomic Editor from your newly created development environment you need to create a launch configuration.
|
136
|
|
137
|
* Expand <eu.etaxonomy.taxeditor> and open <<<eu.etaxonomy.taxeditor.product>>>
|
138
|
|
139
|
* In the <Testing> section (down left) click on <Launch an Eclipse application in Debug mode>
|
140
|
|
141
|
The Taxonomic Editor should launch. Note: You might want to tweak the launch configuration, e.g. increase the memory.
|
142
|
|
143
|
* Where do I go from here?
|
144
|
|
145
|
Please read the {{{http://dev.e-taxonomy.eu/trac/wiki/TaxonomicEditorDev}wiki}} for how-to's and code examples.
|