Создание объектов класса в dll в Java - PullRequest
4 голосов
/ 09 июня 2011

Существует третья часть dll с определениями класса в C ++, которую я должен использовать в Java.У меня есть полное знание открытых методов в DLL.Теперь, чтобы использовать их, я использую программу-оболочку C ++, которая создает объект и при необходимости вызывает функции в dll.И я связываю этот код C ++ с Java, используя JNI.Есть ли другой эффективный способ сделать это.То есть создавать объекты класса и использовать его функции напрямую, используя JNI или любую другую библиотеку в Java

Ответы [ 2 ]

1 голос
/ 09 июня 2011

Чтобы вызвать нативный (C / C ++) код из Java, вам придется выполнить маршаллинг объектов между нативным миром и Java, JNI оправдывает это, и ваш подход выглядит мне как раз.

0 голосов
/ 09 июня 2011

Прямое использование классов C ++ в java возможно только с CNI, что означает, что вы должны использовать gcj (компилятор gnu для java).В противном случае вы должны написать класс jni-оболочки самостоятельно.

...