はじめに:
C アプリケーションへの Java の埋め込みは、拡張できる
目的:
このチュートリアルの目標は、Java を C アプリケーションに埋め込み、Java を利用できるようにすることをガイドすることです。
JNI とそのアプリケーション:
JNI (Java Native Interface) は、C と Java の通信と対話を可能にするフレームワークを提供します。従来、JNI はスタンドアロン Java プログラムに使用されてきましたが、アプリケーション内に JVM (Java 仮想マシン) を埋め込むためにも使用できます。
アプリケーション内に JVM を埋め込む:
C アプリケーションに JVM を埋め込むには、次の重要な手順に従います。
<code class="cpp">#include <jni.h> int main() { JavaVM *jvm; JNIEnv *env; JDK1_1InitArgs vm_args; vm_args.version = 0x00010001; JNI_GetDefaultJavaVMInitArgs(&vm_args); JNI_CreateJavaVM(&jvm, &env, &vm_args); jclass cls = env->FindClass("Main"); jmethodID mid = env->GetStaticMethodID(cls, "test", "(I)V"); env->CallStaticVoidMethod(cls, mid, 100); jvm->DestroyJavaVM(); }</code>
このコード スニペットは JVM を初期化し、C コード内から Java クラスおよびメソッドと対話できるようにします。
使用例:
Cinema 4D アプリケーションと対話する次の Java コードを考えてみましょう:
<code class="java">import c4d.documents.*; class Main { public static void main() { BaseDocument doc = GetActiveDocument(); BaseObject op = doc.GetActiveObject(); if (op != null) { op.Remove(); } } }</code>
Java を埋め込むことで、次のことができます。 Cinema 4D の機能を C アプリケーションにシームレスに統合し、その機能を拡張します。
以上がJNI を使用して Java 機能を C アプリケーションに統合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。