What is JavaSVN?

JavaSVN is a pure Java Subversion client library. You would like to use JavaSVN when you need to access or modify Subversion repository from your Java application, be it a standalone program, plugin or web application. Being a pure Java program, JavaSVN doesn’t need any additional configuration or native binaries to work on any OS that runs Java. On this site you will also find instructions on how to make existing programs use JavaSVN instead of native javahl bindings.

JavaSVN Features

  • No external binaries or libraries are needed to work with Subversion repository.
  • JavaSVN supports http, https, svn and svn+ssh connection protocols.
    New: file protocol is supported in 1.1.0 beta version.
  • Low level API allows effective direct Subversion repository access.
  • JavaSVN is compatible with applications that already use native javahl bindings.

Common JavaSVN Use Cases

Among applications that may benefit from using JavaSVN are:

  • IDE’s Subversion integrations or standalone Subversion clients;
  • Content management systems that use Subversion repository to store versioned documents;
  • Applications that use central Subversion repository to store data common for all clients;
  • Subversion productivity tools implemented as web or desktop applications;
  • Ant-based systems that have to perfrom Subversion operations from the build.xml file.

Above list includes only common use cases, of course your application may not fit in the above list, but as soon as it has to access Subversion repository or work with Subversion working copy files, you may consider using JavaSVN.