最近需要把别人用C++别写的程序,wrap成java 提供给程序使用。想了好久不知道如何去做,尝试了Jacob,JNI,JNA 等比较流行的开源框架,但是自己C++水平有限,都很难达成结果。最后发现了SWIG ,用来wrap C++的利器。真是佩服编写这个的人,能够封装多种语言,实在是太厉害了。自古天下程序一大抄,我也是学习了公司前人的程序,搞清了SWIG 如何使用。我只是用到了wrap java ,SWIG 使用的是 生成JNI代码的方式,具体步骤如下:
1 编写.i 文件
2执行SWIG 指令生成JAVA 文件和JNI 接口文件
3编译JNI c++接口文件
4编译java文件
5编写library测试程序