设为首页 加入收藏

TOP

从 C/C++ 程序调用 Java 代码
2014-11-24 12:37:45 来源: 作者: 【 】 浏览:0
Tags:C/C 程序 调用 Java 代码

JNI允许您从本机代码内调用 Java 类方法。


要做到这一点,通常必须使用 Invocation API 在本机代码内创建和初始化一个 JVM。


下列是您可能决定从 C/C++ 代码调用Java 代码的典型情况:


1.希望实现的这部分代码是平台无关的,它将用于跨多种平台使用的功能。


2.需要在本机应用程序中访问用 Java 语言编写的代码或代码库。


3.希望从本机代码利用标准 Java 类库。


1.编写 Java 代码。


这个步骤包含编写一个或多个 Java 类,这些类实现(或调用其它方法实现)您想要访问的功能。


2.编译 Java 代码。


在能够使用这些 Java 类之前,必须成功地将它们编译成字节码。


3.编写 C/C++ 代码。


这个代码将创建和实例化 JVM,并调用正确的 Java 方法。


4.运行本机 C/C++ 应用程序。



接下来,我们将 Java 代码编译成字节码。


完成这一步的方法之一是使用随SDK 一起提供的Java 编译器 javac。使用的命令是:


JNI_cCalljava_test.java


或者直接在eclipose中编写保存即可


步骤 3:编写 C/C++ 代码


即使是在本机应用程序中运行,所有 Java 字节码也必须在 JVM 中执行。


因此 C/C++ 应用程序必须包含用来创建和初始化 JVM 的调用。


为了方便我们,SDK 包含了作为共享库文件(jvm.dll 或 jvm.so)的 JVM,这个库文件可以嵌入到本机应用程序中。




带有嵌入式 JVM的 C 应用程序:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android自定义控件之我的电话小键.. 下一篇jQuery中Ajax使用

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·工业机器人TCP校准中 (2025-12-25 05:19:17)
·opc 通讯协议与 TCP (2025-12-25 05:19:15)
·labview中tcp/ip通信 (2025-12-25 05:19:13)
·新书介绍《Python数 (2025-12-25 04:49:47)
·怎么利用 Python 进 (2025-12-25 04:49:45)