3 Stimmen

Rufen Sie die C API aus Groovy auf

Ich weiß, dass es besser ist, Python zu verwenden, um Posix und Win API aufzurufen, aber ich möchte wissen, ob es einen nicht so schmerzhaften Weg gibt, C APIs von Groovy aus aufzurufen, oder zumindest mit Java.

4voto

Kevin Montrose Punkte 21631

Der offizielle Weg, die native Plattform (implizit alle C/C++-Codes) von Java aus aufzurufen, ist über JNI. Ich würde das nicht als "nicht so schmerzhaft" bezeichnen.

Sie könnten versuchen, SWIG zu verwenden, um den Großteil des unangenehmen Codes für Sie zu generieren - ich habe es ein paar Mal erfolgreich eingesetzt, um meinen eigenen C-Code zu umwickeln. Ich musste jedoch einigen meiner Codes "handle-izieren", um den resultierenden Java-Code lesbar zu machen.

Eine Option, von der ich gelesen habe, die ich aber nie persönlich genutzt habe, ist JNA. Es scheint weniger Aufwand zu sein als JNI, aber ich kann nicht dafür bürgen.

All diese Lösungen sind auf Java ausgerichtet, aber ich sehe keinen Grund, warum man sie nicht in jeder JVM-gehosteten Sprache verwenden könnte.

0voto

Dónal Punkte 180956

Wenn es sich um eine COM-Bibliothek handelt, die Sie aufrufen möchten, könnte dann Scriptom eine Groovy-Bibliothek sein, die das Problem lösen könnte.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X