/rucaja

Calling Java code from Rust via JNI

Primary LanguageRustApache License 2.0Apache-2.0

Rucaja (Rust calls Java) Build Status Clippy Linting Result

Calling Java code from Rust via JNI.

Status

Creating a flat Java wrapper class and producing a fat JAR with all the dependencies reduces the Rust interface code.

A more complete example is kud1ing/tinkerpop-rs which uses Rucaja to call Apache TinkerPop.

Platforms

The code is tested on Linux and macOS. Your platform might need adjustments in build.rs.

Mac

Trying to run may give:

dyld: Library not loaded: @rpath/libjvm.dylib
  Referenced from: ./target/debug/rucaja
  Reason: image not found
Abort trap: 6

this might require something like:

sudo ln -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib

License

Licensed under either of

at your option.