当前位置:   article > 正文

java 生成webservice调用代码_在 Rust 中调用 Java 代码

j4rs

j4rs 代表 “Java for Rust” ,可以在 Rust 中轻松调用 Java 代码。


不久前,我需要在 Rust 中调用 Java 代码,就启动了 j4rs 这个项目。 其主要思想是实现一个 crate,让用户能够轻松调用 Java,这样他们就可以从庞大的 Java 生态系统中受益。


我说的“容易”,是指:

  • 注意 JNI 所以需要的配置(例如 jvm 包含/链接本地共享库)。
  • 创建一个直观、简单的 API 进行 Java 调用(Rust -> Java 方向)。
  • 允许 Java -> Rust 回调。
  • 无缝在在 Linux 或者 Windows 上使用 crate(当然,前提是安装了 Java)。
  • 遵循 “Rust-first” 方式: Rust 代码可以创建和管理 JVM,而不是反过来。

在此过程中,我还发现一些 other crates 可以调用 Java 代码,但是似乎可以尽量减少程序员对 “JNI 细节” 的干预。


我们中的许多人,Rust 程序员们, 都知道如何编写 Java,但是可能没有多少人知道(或者愿意去处理)JNI的特性和陷阱。


和往常一样,安慰伴随着一些牺牲。隐藏 JNI 细节意味着使用反射和对象序列化。这带来了一些性能损失。

j4rs 是为我们这些愿意付出这个代价的人准备的。


快速开始


只需要在 Cargo.toml 中定义 j4rs :<

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/484848
推荐阅读
相关标签
  

闽ICP备14008679号