在Java上加载dll库
我需要在java上加载一个用C编写的库。我只有dll和头文件。 由于我不明白如何从 JNI 文档中翻译指针或其他派生类型,因此我尝试使用自动化工具,gluegen 和 SWIG,但我无法管理如何使用它们。
我尝试为 SWIG 创建一个接口文件,但它只给出错误。是否有关于如何使用任何可以工作并可以从 .h 文件生成翻译的 C 函数和类型的工具将 dll 加载到 java 程序的示例?
I need to load a library written in C on java. I have only dlls and header files.
Since I didn't understand how to translate pointers or other derivated types from JNI documentation I tried to use an automating tool for this, gluegen and SWIG, but I couldn't manage on how to use them.
I tried to create an interface file for SWIG but it only gives errors. Is there an example on how to load a dll to a java program using ANY tool that works and can generate translated C function and types from .h files ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
以下是如何在 Java 中执行 CRC32 的 JNI 示例:
CRC32.java
:使用
javah -jni
创建头文件CRC32.h:
CRC32.c:
此文件显示了 JNI 用法的示例:
希望有所帮助。
Here is a JNI example of how to do CRC32 in Java:
CRC32.java
:Use
javah -jni <Classname>
to create a header fileCRC32.h
:CRC32.c
:This file shows examples of JNI usage:
Hope that helps.