我知道使用Python调用Posix和Win API更好,但是我想知道是否有一种从Groovy或至少使用Java调用C API的方法没有那么痛苦.
解决方法:
从Java调用本机平台(隐含所有C/C++代码)的官方方法是通过JNI.我不会称其为“不太痛苦”.
您可以考虑获取SWIG为您生成大多数讨厌的代码,我已经使用过几次来包装一些自己的C代码并取得了一些成功.但是,我*“处理”一些代码以使结果Java可读.
我已经读过但从未亲自使用过的一个选项是JNA.它看起来比JNI的工作量少,但是我不能保证.
这些解决方案都是以Java为中心的,但是我不明白为什么您不能在任何JVM托管语言中都使用它们.