If you want to use SQLSpaces, you probably want to program clients. For this you need the SQLSpaces Server running somewhere and the SQLSpaces Client libraries.


We highly recommend to just download the server bundle and optionally the web investigation module. To enable the web investigation, download the WAR file and put it into the server folder. It is automatically interpreted and will be accessible via browser (default port is 8080).



However, you can also download the jars for the server and its dependencies (as they are defined in the pom.xml) and start the server within a Java process. You should only go this way, if you want to modify the server or embed it into an existing application.


SQLSpaces are developed in several Maven modules. If you program a client for the SQLSpaces, you need two of them. There are two ways of how to get the necessary jars for client development:

Doing it the old fashion way

You can download the jars on your own. Remember that you need the modules sqlspaces-client and sqlspaces-commons and the jackson-core library (for the JSON protocol parsing).





If you want to use the XML protocol and not the JSON one (for what ever reason), make sure that you have the stax-api version 1.0.1 and org.codehaus.woodstox.wstx-lgpl version 3.2.9 on your classpath.

Doing it the Maven way

If you are using Maven (that you should do, because it simply rocks ...), you can simply fetch the jars from our repository.

The URLs are: or

You can simply add this repository definition to your pom (choose if you want to go "stable" with the releases repository or "unstable" with the snapshots repository):


Just add a dependency to info.collide:sqlspaces-client to your project and it will work.



(Regular) Android applications are written in Java, thus you can use the Java client also for Android development. Just add the three above (Download) mentioned libraries to your project and you should be fine.

Please note that your application needs need to have the permission to access the Internet. Please add the following uses-permission statement to your manifest file.

  <uses-permission android:name="android.permission.INTERNET">

Other clients

If you want to program clients in other languages (see Interface to other languages), refere to the sub projects (todo):

  • Prolog
  • C#
  • JavaScript
  • Node.JS
  • Ruby (currently not supported any more)
  • PHP (currently not supported any more)