Installing Subclipse with SVNKit

SVN Merger

Subclipse is an Eclipse plugin that provides to this IDE the ability to interact with a Subversion server (Google code Project Hosting offers this type of service). That way, without leaving Eclipse, programmers can check out the latest version of the code from a repository, make their changes to the code and then commit the files back to the Subversion server.

The Subclipse plugin talks to Subversion via a Java API that requires access to native libraries. To do so, Subclipse uses the JavaHL libraries by default, but Ubuntu does not have those libraries installed, therefore, root privileges would be necessary to installing them. The workaround used this time is to install SVNKit (formerly known as JavaSVN) which is a pure Java implementation of the Subversion API.

Environment

Required software that has already been installed and configured on the system.

Installation steps

Step 1 - Installing the plugin

Start the Eclipse IDE and from the menu select Help > Install new software... Fill the field named Work with: with this URL: “http://subclipse.tigris.org/update_1.6.x” and press enter. Once Eclipse has updated the list of available plugins and components choose only the required components listed under Subclipse, we don’t need anything else (by now...).

Installing Subclipse pluginList of available components.

Click Next, a summary of the components that will be installed appears, click Next again. Accept the terms of the licence agreement and click Finish to start the installation process. Finally, restart Eclipse.

Step 2 - SVN JHL Welcome message

Ubuntu does not include native support for the JavaHL libraries, so it is normal to receive the following welcome message when Eclipse restarts from the installation process.

JavaHL errorUbuntu does not includes JavaHL native libraries.

As pointed before, we would need administrator privileges to install the JavaHL libraries, and that is something we are trying to avoid during the set up of the work-area. The work around is simple, the Subclipse plugin uses the JavaHL libraries as a connector to communicate with the Subversion protocol, this protocol has a defined API, and fortunately there exist a pure Java implementation of this API. SVNKit is here to rescue us, the installation of this package will be done repeating the steps followed before, but this time we will include the SVNKit package.

Installing SVNKitInstalling the SVNKit adapter.

We already know the steps...

  1. Select SVNKit Client Adapter inside Subclipse, Next...
  2. A list with the SVNKit package selected, just click Next...
  3. Accept license agreement, click Finish.
  4. Restart Eclipse.

The message appears again, don’t panic. We still need to configure Eclipse to use the SVNKit as the SVN connector. To do so, follow the next actions: open Window > Preferences, and look for SVN, then access Team > SVN and change there the JavaHL client to SVNKit. Restart.

Select SVNKit adapterUpdate the adapter used by the Subclipse plugin.

No error this time and we can connect now to a SVN repository.

Test

To verify the proper functioning we will connect to a SVN repository. Inside Eclipse, select Window > Open perspective > Other... and select SVN Repository Exploring. From this perspective right click over the SVN Repositories tab and select New > Repository Location...

Fill up the Url field with this value: http://rarejava.googlecode.com/svn/trunk/, click on Finish. Now the repository appears listed inside the SVN Repositories tab, expand it and right click over the "examples" folder, then select Checkout....

SVN CheckoutCheckout a project from a SVN repository.

Leave the options selected by default on the next window and click Finish to create a new project into Eclipse. This time, however, the project will have the source code downloaded from the repository. One last thing, you have read-only permissions on this SVN repository, so you will be able to download it an its future updates but not to commit your changes.

References

May29

Post Sharing