Skip to main content

Developer Guide

This guide explains the necessary steps to set up your local development environment which will enable you to develop on the Subversive project.

Installing Eclipse IDE for Committers

For developing on the Subversive project, we recommend using the "Eclipse IDE for Eclipse Committers". Just go to the download page where you can download the mentioned package and install it.

Checkout Subversive's sources

Now, let's fetch Subversive's sources. We recommend the following steps:

  1. Create a new and empty workspace folder.
  2. Go to the workspace folder and fetch the sources:
    git clone https://gitlab.eclipse.org/eclipse/subversive/subversive.git subversive
    svn co https://osspit.org/svn/subversive-connectors/ connectors
  3. Open the Eclipse IDE (for Committers)
  4. Import the source projects in Eclipse.

Close certain projects

If you imported all projects, you might need to close some in the Eclipse IDE to get rid of errors:

  • Close all discovery projects but the newest one.
  • Close all SVN Kit projects but the newest one.
  • Close the SubveriveCommitIntegration project.
  • Linux/Mac users: Close all Windows-specific projects (ending with ".win*").

Launching Subversive

Create a new run/debug configuration of the type "Eclipse Application" with the following settings:

  • In the tab "Plugins" under "Launch": Make sure that the option "All workspace and enabled target plug-ins" is activated
Furthermore, you have to adjust a general Eclipse setting: Navigate through the menue Window > Preferences > Plug-in Development. Check the option "Include all plug-ins in workspace scope". Only then you can search for classes/types of the Eclipse framework.

Running jUnit tests

In order to run jUnit tests, please follow the subsequent steps:

  1. In the project org.eclipse.team.svn.tests: Open the plugin.properties file and make sure it contains a Subversion repository for testing purposes and valid credentials with write access (adjust the properties Repository.URL and Repository.Username and Repository.Password accordingly).
  2. Create a new "jUnit Plug-in Test" launcher:
    • Select "org.eclipse.team.svn.tests" as project
    • Select a valid test class, e. g. AllTests or ParameterizedWorkflowTest
    • Select "jUnit 4" as test runner
    • In the main tab: Under "Workspace Data" choose a location which is outside of Eclipse's workspace, e. g. "/../test_data" (otherwise Eclipse would try to compile class files which would interfere with some jUnit tests)
    • Make sure "Clear" is NOT checked

Jenkins

Our Jenkins instance: https://ci.eclipse.org/subversive/

Further reading: https://wiki.eclipse.org/Jenkins

FAQ/Troubleshooting

Why are the connectors located in a different Subversion repository?

Due to license issues. For example SVN Kit is incompatible with the EPL.

Error: Bundle 'org.eclipse.mylyn.tasks.bugs' cannot be resolved

The solution is to install Mylyn completely: Search for "Mylyn" via Eclipse's Marketplace. It should be listed as "installed". Click on "Change" and select "Mylyn Context Connector: Eclipse IDE", too, and proceed with the installation.

Error "import org.eclipse... cannot be resolved"

If you get the tenacious error "import org.eclipse... cannot be resolved": Please check whether it is about the project "test_data/org.eclipse.team.svn.test". If yes, then you'll have to remove the project from the workspace.

Back to the top