java - JNI 是否依赖于平台?

标签 java c java-native-interface

<分区>

我用 Java 和 JNI 为 Linux 编写了简单的“Hello World”程序,如果我正确使用 JNI,则必须为每个平台编译共享库(例如,*.so 用于 Linux,*.dll 用于 Windows 等等)将它放在你的 *.jar 文件附近的某个地方并编写一个脚本来正确执行它(例如 java -jar -Djava.library.path=. your_app.jar)。这让我有点难过,因为我选择 Java 是因为平台相互依赖。当然,在 Windows 和 Mac 上构建完全相同的库并不是什么大问题,但我第一次想到 JNI 就像一颗 Elixir ,它将在单个 .jar 文件中结合 Java 的平台独立性和 C 的速度。

也许我猜错了,有办法解决?

最佳答案

Java 大部分 平台独立,JNI 是异常(exception)......

关于java - JNI 是否依赖于平台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11258262/

相关文章:

java - 同步访问 REST Web 服务

java - JFrame 的 getFocusOwner() 没有帮助

c - 为什么循环重复printf?

c - Toom-Cook乘法算法实现

c++ - 如何在 LLVM 中找到操作数的定义点?

gradle - Gradle:如何删除NativeLibrarySpec的静态任务

java - 从覆盖传递数组

Java-gzip 解压缩的澄清

java - Delphi/Android 在哪里搜索本地语言库?

java - Android JNI 为什么在父类中 set Child() 不可用