有关如何从Groovy调用C API的信息,但我们需要做相反的事情 - 从C程序调用Groovy脚本。
我们正在考虑创建一个Groovy" main"通过JNI调用C函数。这使JVM继续运行,C函数本质上是我们的C程序。我们无法弄清楚的是如何从这个C程序中调用任意Groovy函数。
我们想要做的是以某种方式在我们的C代码中调用GroovyClassLoader() 创建映射到Groovy脚本blob的对象,然后根据需要调用各种方法。
我们通常希望尽可能远离涉及多个进程,管道,套接字等的解决方案。传递给我们的Groovy函数的数据可能很大,并且编组/取消编组它对于我们尝试做的事情来说太慢了。
提前感谢任何可能为我们提供良好榜样的人!