GIWS (программное обеспечение) - GIWS (software)
Тема этой статьи может не соответствовать Википедии рекомендации по продуктам и услугам.Август 2015 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
эта статья нужны дополнительные цитаты для проверка.Август 2015 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
GIWS это генератор оболочки предназначен для упрощения вызова Ява от C или C ++ путем автоматической генерации необходимых JNI код.
GIWS выпущен под CeCILL лицензия.
пример
Следующий класс Java выполняет простые вычисления.
пакет basic_example;импорт java.lang.Math;общественный класс MyComplexClass{ общественный MyComplexClass(){ // конструктор } общественный длинная myVeryComplexComputation(двойной а, двойной б){ вернуть Математика.круглый(Математика.потому что(а)+Математика.грех(б)*9); } }
GIWS дает возможность вызывать его из C ++.
#включают <iostream>#включают "basic_example.hxx"#включают <jni.h>JavaVM* create_vm() { JavaVM* jvm; JNIEnv* env; JavaVMInitArgs аргументы; JavaVMOption опции[2]; аргументы.версия = JNI_VERSION_1_4; аргументы.nOptions = 2; опции[0].optionString = const_cast<char*>("-Djava.class.path =."); опции[1].optionString = const_cast<char*>("-Xcheck: jni"); аргументы.опции = опции; аргументы.ignoreUnrecognized = JNI_FALSE; JNI_CreateJavaVM(&jvm, (пустота **)&env, &аргументы); вернуть jvm;}с помощью пространство имен basic_example;с помощью пространство имен стандартное;int основной(){ JavaVM* jvm = create_vm(); MyComplexClass *testOfMyClass = новый MyComplexClass(jvm); cout << «Мое вычисление:» << testOfMyClass->myVeryComplexComputation(1.2,80) << конец; вернуть 0; }
Для создания привязки GIWS использует объявление XML. GIWS сгенерирует код JNI для вызова объекта Java.
<пакет имя ="базовый_пример"> <объект имя =«MyComplexClass»> <метод имя ="myVeryComplexComputation" returnType ="длинная"> <параметр type ="двойной" имя ="а" /> <параметр type ="двойной" имя ="б" /> </method> </object></package>
Смотрите также
- SWIG позволяет вызывать C или C ++ с языков более высокого уровня
внешние ссылки
Эта инструмент для программирования -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |