If you want to work with the source code or libraries of Taverna, we recommend you first make sure you have these prerequisites installed:
You don't actually need Eclipse, it should also be possible to use Netbeans
with Maven support, or if you are patient enough, just the Maven command line and a normal editor. However, as the Taverna code base contains many modules, an IDE such as Eclipse or Netbeans makes it a lot easier to navigate between classes, and the Maven support handles nested modules, dependency download and assembling the classpath for you. For a project depending on Taverna code we always recommend using Maven 2 to handle the dependencies. This should also make it easy to later depend on a later version of our code base.
Java SE Development Kit (SDK)
To compile Java source code you should make sure you have Sun's Java SE Development Kit (SDK)
installed. Taverna code requires Java 6. Note that although you might have the JRE installed (java) you will need the SDK to get the compiler javac.
For Windows you would need to download and install the SDK
, for instance "JDK 6 Update 22" (or later). You might then have to modify your PATH to be able to run java on the command line - see My computer -> System properties -> Advanced -> Environment Variables.
Mac OS X 10.5 and 10.6 should come bundled with Java SDK version 6. Later OS X versions might require separate Java install
.
Many Linux distributions allow you to install Sun's Java through their package manager, like in Ubuntu
- although you might have to enable additional "non-free" software sources.
Note that these days your Linux might come bundled with an alternative open Java implementation like IcedTea, GCJ or OpenJDK - these have unfortunately not proven to be stable enough to be used for graphical software like Eclipse and the Taverna workbench.
In Ubuntu, install sun-java6-jdk - you might need to add the partner repository.
If you experience weird problems - check on the command line with java -version that you are using Sun's Java - in Ubuntu you can use update-java-alternatives to select which java to have on your path.
Eclipse IDE
Although Taverna itself is not based on and do not require any part of Eclipse platform, the myGrid developers mainly use Eclipse
as their IDE. You can use any other IDE of course, but due to the mere size of our code base you will probably want to stick with something that supports Maven, like Eclipse or NetBeans
.
Download
and install Eclipse IDE for Java Developers for your platform, at the time of writing this the latest version is Helios SR1 (3.6.1). You will need the edition for Java or Java EE. You will need to choose the 64-bit version if the command java -version says your Java is 64-bit.
Note that some Linux distributions might come with a version of Eclipse in their package manager, but this seems most of the time to be a very outdated version (like 3.3) which we don't recommend - mainly because you might not be able to use the latest version of the Subversive and m2eclipse plugins.

| Running Eclipse using the right Java Note that if you are running Eclipse on Windows, you might get a problem with Maven if Eclipse is running using the JRE instead of the JDK, or in the worst case, a Windows bundled JRE. Edit your eclipse.ini file with an editor that can handle UNIX linebreaks (Wordpad, VIM, Emacs, Textpad, but not Notepad), and set the -vm argument to the full path to your JDKs java.exe or javaw.exe, prefering the x86 version on Windows for 32-bit. javaw.exe} avoids the command line window to appear in Windows, for other operating systems the pure java binary should work. You will need to insert this on the line above the existing line with -vmargs: One trick to make sure Eclipse actually picks up your -vm argument is to first intentionally misspell it, like javawrong.exe - launching eclipse.exe then should give an error message. Afterwards, you might check from within Eclipse Preferences->Java->Installed JREs to ensure it uses the correct JDK - this is also important to do in Linux if you have alternative Java implementations like IcedTea or GCJ installed. |
Maven Integration for Eclipse
Taverna source code is built and structured using the tool Maven 2
(instead of say ant or make). Maven also takes care of retrieving and maintaining dependencies so we don't have to put various JARs in our source repository. Have a quick look at Maven's documentation
if you are new to using Maven.
Do not use the outdated mvn eclipse:eclipse plugin to import Taverna source code into Eclipse. This has been superseded by using the Maven integration for Eclipse plugin (m2eclipse)
.
To install m2eclipse, first go to Help -> Install new software... in the Eclipse menu:

Then under Work with paste the current update site and click Add..., as described on the m2eclipse
page. At the time of writing, the update site URL is described on the install page
as:
http://m2eclipse.sonatype.org/sites/m2e![]()
| Install 0.10.2 - not 0.12.x Note, that due to a bug MNGECLIPSE-2757 http://m2eclipse.sonatype.org/sites/archives/m2e-0.10.2.20100623-1649/ Disregard this advice if you are installing m2eclipse 0.13 or newer, or alternatively see the workarounds. To install the older version, either use the version specific update site above, or uncheck the Show only the latest versions of available software option in order to select only Maven integration for Eclipse (Required) 0.10.2.20100623-1649 |

From the newly added m2eclipse site, tick to select Maven integration for Eclipse. Note that since version 0.10.0 m2eclipse no longer requires you to select various sub-components. If you already have an older version of m2eclipse already installed, click already installed in this dialogue and remove such components first. You would have to restart Eclipse if you need to do this.
At time of writing, 0.12.0.20101115-1102 is the latest version of the m2eclipse plugin. Unfortunately the SVN m2eclipse Integration plugin (see below) will not install if this version is used so you need to install the previous version, 0.10.2.20100623-1649, if you want to use it. You can access this by unchecking the "

To install, click Next, click through, and wait for Eclipse to download and installs the Maven plugin. Say Yes for the restart of Eclipse.
| No zest? If you get an error message about the bundle org.eclipse.zest.core missing, then try File -> Switch workspace and start again with a blank workspace, also make sure Contact all update sites during install is ticked. |
Next steps:
- If you are developing a plugin you should now have all the required components. You might also want to install the Maven binaries, see below.
- If you are checking out the Taverna source code you would also need to install the Subversive plugin, see below.
Subversive, Subversion support for Eclipse (optional)
Taverna source code is kept in a Subversion repository. If you want to check out the Taverna source code from our Subversion repository, we recommend you to use Eclipse for this purpose, but if you are simply developing a plugin or using the Taverna APIs you would not need to install this plugin.
There are two main plugins for Eclipse for handling Subversion access. By our experience both Subclipse
and Subversive
should work, but we've found Subversive to be best at handling our code base and repository structure. To avoid confusion you might want to make sure you have not already installed the competing Subclipse by checking Installed software from within Software updates.
As with installing the m2eclipse plugin, you'll need to add a new plugin site to install Subversive
. Subversive is an official part of Eclipse, but updated versions are released separately by the company Polarion. Check the Polarion Subversive download site
for up-to-date URL for the Subversive plugin, look for Latest release (recommended).
As of writing, the update site URLs needed are:
You will normally only need to add the first of these update sites, but you may also add the last site for adding the m2eclipse Subversive integration(See below).
Now tick off at least:
Subversion SVN Team Provider Plugin:
- Subversive SVN JDT Ignore Extensions (Optional) (Incubation)
- Subversive SVN Team Provider (Incubation)

To install, click through with Next, and in the end agree to Restart Eclipse.
To test that the plugin is installed, click Window -> Open perspective and select SVN Repository Exploring.

The first time you do this, Subversive will pull up a Subversive Connector Discovery dialogue, as the SVN libraries need to be install separately. We generally find that SVN Kit 1.3.0 (or newer) works, although it might pop up warning messages a bit too often. If you run Windows you can also try Native JavaHL 1.6.3 (or newer). Click Finish, which will add the additional software sites and install the required modules to Eclipse.

If you don't get this dialogue, you can manually add the last two update sites, and install:
- Subversive SVN Connectors
- SVNKit 1.3.0 implementation (Optional)
At time of writing the version of the Subversive SVN Team Provider is version 0.7.8.I20091023-1300, the version of the SVN connectors 2.2.1.I20091009-1900.
| Make sure you install at least the Subversion 1.5-capable versions or newer of these plugins, ie. SVNKit 1.2.x& and/or JavaHL 1.5.x. (Do not use JavaHL 1.4.x or SVNKit 1.1.x as they will get confused if you use an 1.5.x client on the command line, and don't understand relative svn:externals that might be used in Taverna's Subversion repository) If you also run a command line client Subversion, you might want to use a connector at a matching level, otherwise choose the newest one. |
Subversive integration with m2eclipse
To install the optional m2eclipse integration for Subversive, assuming you have already installed m2eclipse and Subversive as described above, go back to Help -> Install New software and select or add the update site:
From here, select
- Subversive integration for the M2Eclipse project
Do not select the CSC integration. Click Next, and finally say yes to Restart Eclipse.
At time of writing the version of the connector of the Subversive M2Eclipse integration is 1.0.2.I20100223-1900.
Check SVN configuration
After installation and restarting Eclipse, check the configuration of the Subversive plugin by going to Window-> Preferences... -> Team -> SVN and go to the tab SVN Connector. Make sure SVNKit 1.3.0 r5847 (for SVN 1.6.2, all platforms) (or a later version) has been selected.

Next steps:
- If you are developing a plugin or checking out the Taverna source code you should have all the required components.
- If you are comfortable with the command line, you might also want to install the Maven binaries and Subversionbinaries, see below.
Maven (optional)
As the Maven integration for Eclipse comes bundled with the libraries for Maven 3.0 alpha 7 (or later), you generally need to install Maven separately if you want to use Maven from the command line, or if you need to use an older version of Maven. If you use the Maven integration for Eclipse you can launch Maven from within Eclipse
- this would not require the installation of Maven binaries.
However, if you do want the command line tool, download Maven
2.2.1 or later, and install it somewhere on your operating system. In short all you need to do is unpack the archive somewhere and put the mvn binary on your PATH - One way to do this on UNIX-like systems is to unpack it to /usr/local/share and make a symlink from /usr/local/bin/mvn pointing to /usr/local/share/apache-maven-2.2.1/bin/mvn.
Some Linux distributions might come with Maven in their package repository. As long as this is version 2.2.1 or later it should probably work fine - but if you experience any problems try using the latest Maven release
.
Configuring m2eclipse to use the installed Maven
You should configure Eclipse to use your installation of Maven instead of the bundled libraries. This can be worth a shot if the Maven installation from within Eclipse show weird behaviour. Go to Window -> Preferences and Maven -> Installations to configure the path to your extracted Maven installation.

Subversion (optional)
If you want to do Subversion operations from the command line, you will need to install the Subversion client, but for day-to-day use the Subversive plugin for Eclipse should do the job.
However, if you want to use the command line client, install Subversion 1.5.6 or later
. Some OS distributions, like OS X or Ubuntu, might come bundled with the svn client, but check the version using svn --version to make sure it is at least version 1.5 - as 1.4 does not support some features like relative svn:externals. For example OS X 10.4 comes with the outdated 1.4.4.
Next steps
- If you are developing a plugin you should now have all the required components.
- If you are checking out the Taverna source code you can now start with checking out the code.