标签: java java-native-interface
有没有办法调用本机库中的函数(Windows .dll,Linux .so),而不必编写处理JEnv和“this”指针的C ++包装器?
我在这方面缺少C#-alike功能,可以轻松地与本机函数链接,而无需编写桥接库,只需编译器编组细节。
谢谢, 埃米利奥。
答案 0 :(得分:4)
您可以使用Java Native Access JNA来完全按照自己的意愿行事。
请注意,通常的包装器库不是用C ++编写的,而是用C语言编写的。
答案 1 :(得分:1)
我讨厌编写JNI代码并查看JNA,但它似乎并没有被广泛使用,并且可能会出现潜在的性能问题。请改用SWIG。一旦启动并运行,编写脚本并花费很长时间并让它为您生成JNI接口代码。