• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

src/H11-Apr-2019-18,71410,668

README.mdH A D11-Apr-20192.4 KiB5439

fdb-java-style.xmlH A D11-Apr-20194.6 KiB14296

fdbJNI.cppH A D11-Apr-201931.4 KiB1,021833

fdb_java.vcxprojH A D11-Apr-20195.1 KiB103102

local.mkH A D11-Apr-20199.5 KiB223149

pom.xml.inH A D11-Apr-20191.1 KiB4032

suppressions.xmlH A D11-Apr-2019592 1511

README.md

1<img alt="FoundationDB logo" src="documentation/FDB_logo.png?raw=true" width="400">
2
3FoundationDB is a distributed database designed to handle large volumes of structured data across clusters of commodity servers. It organizes data as an ordered key-value store and employs ACID transactions for all operations. It is especially well-suited for read/write workloads but also has excellent performance for write-intensive workloads. Users interact with the database using API language binding.
4
5To learn more about FoundationDB, visit [foundationdb.org](https://www.foundationdb.org/)
6
7## FoundationDB Java Bindings
8
9In order to build the java bindings,
10[JDK](http://www.oracle.com/technetwork/java/javase/downloads/index.html) >= 8
11has to be installed. CMake will try to find a JDK installation, if it can find
12one it will automatically build the java bindings.
13
14If you have Java installed but cmake fails to find them, set the
15`JAVA_HOME`environment variable.
16
17### Fat Jar
18
19By default, the generated jar file will depend on an installed libfdb_java
20(provided with the generated RPM/DEB file on Linux). However, users usually find
21a Jar-file that contains this library more convenient. This is also what you
22will get if you download the jar file from Maven.
23
24This file can be generated by compiling the `packages` target. For example with
25make, you can run:
26
27``` shell
28make packages
29```
30
31#### Multi-Platform Jar-File
32
33If you want to create a jar file that can run on more than one supported
34architecture (the offical one supports MacOS, Linux, and Windows), you can do
35that by executing the following steps:
36
371. Create a directory called `lib` somewhere on your file system.
381. Create a subdirectory for each *additional* platform you want to support
39   (`windows` for windows, `osx` for MacOS, and `linux` for Linux).
401. Under each of those create a subdirectory with the name of the architecture
41   (currently only `amd64` is supported - on MacOS this has to be called
42   `x86_64` - `amd64` on all others).
431. Set the cmake variable `FAT_JAR_BINARIES` to this `lib` directory. For
44   example, if you created this directory structure under `/foo/bar`, the
45   corresponding cmake command would be:
46
47```
48cmake -DFAT_JAR_BINARIES=/foo/bar/lib <PATH_TO_FDB_SOURCE>
49```
50
51After executing building the packages (with `make packages` or the packages
52target in  `Visual Studio`) you will find a jar-file in the `packages`
53directory in your build directory.
54