2

我在 Eclipse 中有一个包含一些 JNI 代码的 java 项目。JNI 代码是跨平台的 - 适用于 Windows 和 Linux。我怎样才能建立一个dll?

谢谢。

4

2 回答 2

4

您必须为 Windows 构建一个 .DLL,为 Linux 构建一个 .so。您将使用以下语法在 Linux 中编译 C 代码:

gcc -shared yourcode.c -I/usr/lib/gcc/x86_64-redhat-linux/3.4.3/include/ -o yourLib.so

在java中使用导入

static {
        System.out.println(System.getProperty("java.library.path"));
        System.loadLibrary("yourlib");
    }

对于 Windows如何将 C 编译为 DLL

于 2013-01-30T08:59:10.050 回答
2

我假设你有一些C/C++代码。要创建dll(windows),您必须编译代码(例如,您可以使用 Visual C++ Express,或 mingw: gcc)。在 linux 中只使用gcc构建库。

为您的平台构建库后,将其添加到库路径中-Djava.library.path=<folder containing the library>

hth

于 2013-01-30T09:02:08.513 回答