【问题标题】:Using JNI in linux, mac and windows在linux、mac和windows中使用JNI
【发布时间】:2012-04-09 06:06:14
【问题描述】:

我有一个完全用 cpp 编写的应用程序,现在我需要在 java 中迁移它,但我不需要将处理逻辑从 cpp 转换为 java,所以我决定使用 JNI。应用必须在linux、mac和windows环境下运行。

但我发现对于 windows,我们需要为 jni 指定 .dll 文件,对于 linux .so 文件,我不知道对于 mac。

现在我的环境是 windows 7。

所以我的问题是:

  1. 我能否编写应用程序,使我需要为所有三个平台提供任何 .dll、.so 文件?

  2. 如何做到这一点?有什么指导方针吗?

【问题讨论】:

    标签: java c++ windows linux java-native-interface


    【解决方案1】:

    在您的 java 类中,您将拥有

    System.loadLibrary("foo")

    然后你只需要在每个系统上编译一个库,例如Linux 的 libfoo.so 和 Windows 的 foo.dll

    【讨论】:

      猜你喜欢
      • 2012-09-16
      • 2021-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-17
      • 2011-08-09
      • 2012-05-02
      • 1970-01-01
      相关资源
      最近更新 更多