技术开发 频道

在Java中实现复用C++代码

  【IT168 技术文档】

  现在的开发工具比较多,如JAVA,C++,。NET等,如何在这些不同的开发工具中实现代码的复用,成为一个比较重要的话题,也是提高生产率,降低项目成本的一个重要手段。其中C++与.Net之间比较好融合,这是因为都是基于ms的开发平台与解决方案,如com,dll,activex等,但java与c++之间就比较麻烦些。下面介绍通过jni来复用c++代码的方法。

  1。在java中声明native方法

  public class Message {   static{   System.load("C:\\lib\\Message.dll");   }   public native static boolean send(String mobile,String text);   }

  其中,dll名称为等会用c++生成的dll,send方法为c++中需要复用的代码,java中只需给出声明即可,代码的实现在c++中.

  2. 编译头文件

  用javah命令生成c++中需要的头文件,如.

  javah Message

  注意这里已经是Message.class了,这时会生成一个message.h文件。

  3。在c++中实现。

  打开vc6.0工程,使用wizard生成一个dll,include刚才用javah生成的头文件,实现要复用的代码即可,一般就是把自己封装好的类在这里做一个调用即可。

  其他:

  java里的定义如boolean,string等都在jni.h中有相应的转换,如jboolean等,直接使用即可。

  希望跟大家进一步讨论。

0
相关文章