GIWS(소프트웨어)

GIWS (software)

GIWS는 필요한 JNI 코드를 자동으로 생성함으로써 C 또는 C++에서 Java 호출을 단순화하는 래퍼 생성기입니다.

GIWS는 CeCIL 라이선스로 출시됩니다.

다음 Java 클래스는 간단한 계산을 수행합니다.

패키지 basic_basic; 수입품 java.displaces를 클릭합니다.수학;  일반의 학급 마이콤플렉스 클래스{  일반의 마이콤플렉스 클래스(){   // 생성자  }  일반의  매우 복잡한 컴퓨팅(이중으로 하다 a, 이중으로 하다 b){   돌아가다 수학.둥글다(수학.왜냐하면(a)+수학.(b)*9);  }  } 

GIWS는 C++에서 호출하는 기능을 제공합니다.

#실패하다 <iostream> #실패하다 "basic_basic.hxx" #실패하다 <jni.h>  JavaVM* create_vm() {  JavaVM* jvm;  JNIEnv* 부러워하다;  Java VMInitArgs args;  Java VMotion 옵션들[2];  args.버전 = JNI_VERSION_1_4;  args.n옵션 = 2;  옵션들[0].option String(옵션 문자열) = const_캐스트< >*>(- Djava.class.경로=");  옵션들[1].option String(옵션 문자열) = const_캐스트< >*>(-Xcheck:jni);  args.옵션들 = 옵션들;  args.ignore 인식되지 않음 = JNI_FALSE;  JNI_CreateJavaVM(&jvm, (무효 **)&부러워하다, &args);  돌아가다 jvm; }  사용. 네임스페이스 basic_basic; 사용. 네임스페이스 표준;  인트 주된(){    JavaVM* jvm = create_vm();  마이콤플렉스 클래스 *Test Of My Class = 신규 마이콤플렉스 클래스(jvm);  외치다 << > "내 계산:"  << > Test Of My Class->매우 복잡한 컴퓨팅(1.2,80) << > ;  돌아가다 0;  } 

바인딩을 생성하기 위해 GIWS는 XML 선언을 사용합니다.GIWS는 Java 객체를 호출하기 위한 JNI 코드를 생성합니다.

<클라이언트> 이름="basic_filename">   <객체> 이름="My Complex Class">         <클라이언트> 이름="복잡한 컴퓨팅" return Type ='긴'>           <클라이언트> 입력='더블' 이름="a" />           <클라이언트> 입력='더블' 이름="b" />         </filters>   </개체> </filters> 

「 」를 참조해 주세요.

  • SWIG를 통해 C 또는 C++를 상위 언어에서 호출할 수 있습니다.

외부 링크