- Fixed rust path resolution in ReflectionJVM and ReflectionNative to resolve relative to project root instead of Gradle daemon directory
- Pass CC_ and AR_ environment variables to cargo build, enabling cross-compilation of Rust crates that depend on C code via cc-rs (e.g. ring, openssl-sys, libsqlite3-sys)
- New REST API sample (
sample/restapi) demonstrating HTTP client in Rust using Tokio, reqwest, and serde with the Dog API
- Fixed the support for Cargo checking on Windows
- Added support for a custom Rust path via
e.g.
cargo.dir=/Users/<user>/cargo_tmp/.cargo/bin
- Moved Rust version checking from initialization to Rust compilation time
Improved Rust code generation: when importing a single JNI primitive type, the import now uses the form use jni::sys::<primitive_type>; instead of use jni::sys::{<primitive_type>};.
This change aligns better with Rust best practices and helps reduce lint warnings.
- Support for Rust version constraints in
rustJniconfiguration.
You can now define which Rust version is acceptable to compile your project using therustVersionproperty.
Supported patterns include:- Exact version:
1.86.0 - Minimum version:
>=1.64.0 - Wildcards:
1.86.*,1.*.*
- Exact version:
- Manual changes to the
config.tomlfile are now preserved.
The plugin no longer overrides existing content, allowing developers to customize their configuration safely.