生成到基于Qt的库的Java绑定 我正在编写一个基于Qt的(QtCub)C++库,希望能够从java和python访问它。Python不是问题,因为PySide和SIP。但是我似乎找不到任何关于用Java做同样事情的信息。这一事实让我充满希望,有一种方法可以为基于Qt的定制库创建绑定

生成到基于Qt的库的Java绑定 我正在编写一个基于Qt的(QtCub)C++库,希望能够从java和python访问它。Python不是问题,因为PySide和SIP。但是我似乎找不到任何关于用Java做同样事情的信息。这一事实让我充满希望,有一种方法可以为基于Qt的定制库创建绑定,java,c++,qt,binding,Java,C++,Qt,Binding,有人这样做过吗?或者有关于如何做到这一点的任何信息或指针吗?有一个名为swig的程序。此程序允许您生成绑定 在java或python等语言中创建函数,只需调用适当的C++(++)函数,例如,如果你有C++函数 int(int x,int y)< />代码,通过SWIG运行原型/定义将创建一个调用java函数的Java包装器。C代码使用的任何库都是无关的 Qt-Jambi包含一个生成器,您可以在自己的Qt类上使用它 然而,诺基亚在v4.5版之后停止了对Jambi的支持 有关技术详细信息,请参阅 此

有人这样做过吗?或者有关于如何做到这一点的任何信息或指针吗?

有一个名为swig的程序。此程序允许您生成绑定
在java或python等语言中创建函数,只需调用适当的C++(++)函数,例如,如果你有C++函数<代码> int(int x,int y)< />代码,通过SWIG运行原型/定义将创建一个调用java函数的Java包装器。C代码使用的任何库都是无关的

Qt-Jambi包含一个生成器,您可以在自己的Qt类上使用它

然而,诺基亚在v4.5版之后停止了对Jambi的支持

有关技术详细信息,请参阅


此外,还有一份早期的白皮书还在第4章中详细介绍了生成器。

SWIG的问题在于它不了解Qt的细节。例如,SIP和PySide生成的绑定可以很好地与Qt配合使用。我使用了C++的SWIG(这不依赖于Qt),而它工作的时候,生成的包装代码是巨大的,尤其是当你开始使用STL模板时。我要寻找的答案更多的是关于可能使用与Qt Jambi相同的生成器。但我找不到任何有关这方面的信息。