我有一个来自库的.c和.h文件。我希望能够从Java调用c文件中包含的函数。我知道这需要JNI,并且我非常了解如何修改.c和.h文件以使它们与JNI一起工作。我不完全理解如何做,或者甚至是JNI的目的,是创建一个简单的JNI库,然后我可以将其包装到另一个Java应用程序中。我想创建界面;将C API扩展为Java,以便我可以在那里使用它。最终的结果是:someCmethodInSomeJNILibrary()位于某些jnilib文件中。
提前致谢
答案 0 :(得分:1)
首先,您可能希望考虑使用JNA。 JNA允许您在不编写其他本机代码的情况下进行交互。如果您已经拥有一个库并且不想构建另一个库,这将特别方便。
使用JNI,所需的步骤包括:
可以在JNI文档中的"Compiling, Loading, and Linking Native Methods"中找到更多详细信息。