SQLCipher in Java Application!


i compiled the sqlcipher in my Linux machine.
Now, i have to use it in an application i built for my school exam.
Unfortunatly, in my sqlcipher directory i have only the libraries for C language and not for Java.
How can i recompiling it for Java? Or transform for Java language?
Thanks a lot


Hello @iu6djr

SQLCipher only distributes the source of the core C library, all client library packaging must be performed separately if you are not using the C interface directly. Packaging SQLCipher to be used with a Java application can be a nontrivial process. You might consider starting with the Xerial JDBC library as a starting point. Feel free to post questions here in the community forums if you run into specific issues.


Ok, thanks a lot…the question is: is it possible compiling this library for java desktop or not? Because if it’s possible, i will study how to do this, but if it isn’t possibile i will change project.
That’s very important for me and for my exam…


Hello @iu6djr - Yes, it is technically possible to do (as @developernotes mentioned we sell a product that does exactly this), however it is definitely a complex integration and build scenario.


@developernotes @sjlombardo - Sqlcipher’s home / landing page states:

SQLCipher has broad platform support for with C/C++, Obj-C, QT, Win32/.NET, Java, Python, Ruby, Linux, etc

If SQLCipher doesn’t actually have support for Java, you have a responsibility as an individual and a company to not falsely state Java is supported on SQLCipher’s home page.


@dstl85 - Just to clarify, as I stated earlier in the thread, SQLCipher does support Java. We sell a product that provides a JDBC driver that works on Windows, Linux, and macOS. However, we don’t make the source code freely available, as it is one of our commercial products.

We will make an attempt to clarify this in the documentation on the site shortly.

In the mean time, if you are interested in Java / JDBC support please feel to contact us at sales@zetetic.net.