main.cpp
来自「java深度历险的随书源代码」· C++ 代码 · 共 55 行
CPP
55 行
#include<iostream>
#include<jni.h>
using namespace std ;
int main()
{
JavaVM* jvm ;
JNIEnv* env ;
JavaVMOption options[1] ;
JavaVMInitArgs vmargs ;
long status ;
options[0].optionString = "-Djava.class.path=D:\\java_and_vsdotnet\\java";
vmargs.version = JNI_VERSION_1_2;
vmargs.options = options;
vmargs.nOptions = 1;
status = JNI_CreateJavaVM(&jvm,(void**)&env,&vmargs) ;
if(status != JNI_OK)
{
cout << "Java虚拟机器建立失败/不知名的错误" << endl ;
cout << "错误代码 : " << status << endl ;
return 1 ;
}
cout << "Java虚拟机器建立成功" << endl;
jclass toolclass ;
toolclass = env->FindClass("MyToolkit") ;
if(toolclass == NULL)
{
cout << "找不到MyToolkit类别" ;
return 1 ;
}
jstring jstr = env->NewStringUTF("My first class!");
jmethodID function ;
function = env->GetStaticMethodID(toolclass,"function1","(Ljava/lang/String;)V") ;
if(function == NULL)
{
cout << "找不到function1函式" ;
return 1 ;
}
env->CallStaticVoidMethod(toolclass, function, jstr);
jvm->DestroyJavaVM();
return 0 ;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?