Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Update svn version to 1.8 on Centos And Configure Eclipse
// Commands are starting with #
Step 1: Setup Yum Repository
Firstly we need to configure yum repository in our system. Create a new repo file /etc/yum.repos.d/wandisco-svn.repo and add following content as per your operating system version.
name=Wandisco SVN Repo
Step 2: Install Subversion Package
Before installing latest package remove existing subversion packages from system to remove the conflict.
# yum remove subversion*
Now install latest available Subversion package using yum command line package manager utility.
# yum clean all
# yum install subversion
Step 3: Verify Subversion Version
At this stage, you have successfully install Subversion client on your system. Let’s use the following command to verify the version of svn client.
# svn --version
svn, version 1.8.17 (r1770682)
compiled Dec 1 2016, 13:36:09 on x86_64-unknown-linux-gnu
Copyright (C) 2016 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see
Source URL :
Additional step to install
# yum install subversion-javahl
JavaHL is a part of the Subversion project. Specifically, it is the Java language binding for the Subversion API. Subversion provides a layered API design that is delivered as native libraries (DLL's). The Subversion command line is simply one consumer of this API. The API is rich in functionality but is also maintained for backwards compatibility. This is the reason there are so many great Subversion clients and tools available, because there is a rich and stable API that provides all of the functionality you need.
Subversion is written in C to provide excellent cross platform support, but also because C produces libraries that are easy to consume from virtually any other language. The Subversion project provides and maintains language bindings for Java, Perl, Python and Ruby. The latter three are provided via the SWIG library and its ability to interface languages with native libraries. JavaHL is a "High Level" API and is provided with custom written C++ code to serve as the JNI bridge between Java code and the native libraries. This design allows us to provide a nice Java API into Subversion.
JavaHL consists of essentially four parts:
A relatively thin layer of Java code that provides the API that consumers can talk to from Java.
A C++ library (the JavaHL library or libsvnjavahl-1). The Java layer talks to this layer using Java Native Interface (JNI) calls. The C++ layer is where the "High Level" API is implemented. For example, Java may provide a simple API that says "Commit this list of files, using this commit message". The C++ layer takes care of memory management and performing all of the lower level Subversion API calls it takes to complete the request.
The Subversion libraries themselves. These are the same libraries that the command line client would install and use. Also, other Subversion clients, such as TortoiseSVN or AnkhSVN would also use these same libraries.
Subversion library dependencies. Subversion needs a number of external libraries to operate. The biggest is the Apache Portable Runtime (APR), but it also needs libraries like Neon for the HTTP client and OpenSSL to handle encryption etc.
All four of these layers are needed for JavaHL to work and be used in an application.
Configure Eclipse to use installed
Open Eclipse ->
Window Menu -> Preferences -> Team -> Svn -> Svn Connector Tab -> Svn Connector DropDown List -> Choose "Native JavaHL 1.8.xx r XXXXXXX (SVN 1.8.xx)"
->Apply -> OK
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment