chore: update readme, update toad-jni, pin jni

This commit is contained in:
Orion Kindel 2023-04-05 10:23:28 -07:00
parent 8eee5f3827
commit 4a64f116dc
Signed by untrusted user who does not match committer: orion
GPG Key ID: 6D4165AE4C928719
3 changed files with 9 additions and 8 deletions

View File

@ -61,11 +61,11 @@ general abstractions that are useful for this project and may be useful to other
This includes things like _"high-level rust struct for `java.util.ArrayList` This includes things like _"high-level rust struct for `java.util.ArrayList`
doing nice things like implementing [`Iterator`](https://doc.rust-lang.org/nightly/core/iter/trait.Iterator.html)."_ doing nice things like implementing [`Iterator`](https://doc.rust-lang.org/nightly/core/iter/trait.Iterator.html)."_
Separately is a rust project in this repository, `./toad-java-glue-rs/`. Separately is a rust project in this repository, `./glue/`.
This is *not* a published crate and is instead source code for a This is *not* a published crate and is instead source code for a
shared library specifically to implement native java methods in this java project. shared library specifically to implement native java methods in this java project.
Development tips specific to the glue lib can be found in `./toad-java-glue-rs/README.md`. Development tips specific to the glue lib can be found in `./glue/README.md`.
#### Developing - Build #### Developing - Build
the sbt command `compile` (`sbt compile` or `compile` in the `sbt` shell) the sbt command `compile` (`sbt compile` or `compile` in the `sbt` shell)
@ -73,9 +73,10 @@ is the only required build step for this project.
`sbt compile` can be broken into the following steps: `sbt compile` can be broken into the following steps:
1. run `javac` to generate C headers for java files with `native` function requirements 1. run `javac` to generate C headers for java files with `native` function requirements
1. dump the headers into `./toad-java-glue-rs/target/debug/` 1. dump the headers into `./target/native/debug/`
- _(dual purpose; a native interface available to manually cross-check against the hard rust implementation, as well as providing an interface to the built library artifact)_ - _(dual purpose; a native interface available to manually cross-check against the hard rust implementation, as well as providing an interface to the built library artifact)_
1. run `cargo build` within `./toad-java-glue-rs/` 1. run `cargo build` within `./glue/` (builds to `./target/native/`)
1. run `cargo test` within `./glue/`
1. build java & scala sources to `./target/` 1. build java & scala sources to `./target/`
### Tests ### Tests

4
glue/Cargo.lock generated
View File

@ -578,9 +578,9 @@ dependencies = [
[[package]] [[package]]
name = "toad-jni" name = "toad-jni"
version = "0.4.0" version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8211cccf8f1dce2768a85b6f42b1d232542ecb616584bc9915da1cfc50c3d3d1" checksum = "ff5fbc1fb554ad85160c74d6c6db551f164b79917c89509037477ad308d2b4ac"
dependencies = [ dependencies = [
"jni", "jni",
"toad-array 0.5.0", "toad-array 0.5.0",

View File

@ -8,8 +8,8 @@ publish = false
crate_type = ["cdylib"] crate_type = ["cdylib"]
[dependencies] [dependencies]
jni = "*" jni = "0.21.1"
toad = "0.17.2" toad = "0.17.2"
toad-jni = "0.4.0" toad-jni = "0.4.1"
toad-msg = "0.18.1" toad-msg = "0.18.1"
tinyvec = {version = "1.5", default_features = false, features = ["rustc_1_55"]} tinyvec = {version = "1.5", default_features = false, features = ["rustc_1_55"]}