2010-11-25 12 views
3

Ich muss CPython-Code von Java aufrufen. Welche Tools/APIs/Bibliotheken gibt es da draußen, um mir dabei zu helfen?CPython von Java?

Jython ist keine Option, da der Python-Code stark von numpy abhängt.

bearbeiten 1: Die main() Funktion Java sein sollte, nicht Python

bearbeiten 2 (dh ich CPython in Java, nicht umgekehrt einbetten müssen.): Ich sollte auch erwähnen, dass ich große numerische geben werde Arrays zwischen Java und Python und daher eine Lösung, die die beiden in den gleichen Prozessraum bringt, wäre vorzuziehen (aber nicht zwingend erforderlich.)

Antwort

4

Sie können betrachten Jepp verwenden, um CPython in Java einzubetten. Lesen Sie documentation here.

bearbeiten: Für Windows hat das Projekt vorgefertigte Binärdateien für Python 2.4, 2.5 und 2.6. Für Linux/Unix-Systeme müssen Sie es selbst erstellen.

+0

Das sieht interessant aus, danke für den Zeiger. – NPE

-1

Sie möchten wahrscheinlich die docs on embedding a CPython interpreter lesen. Wie kann man native Bibliotheken in Java laden (hieß das JNI?)

+0

Danke. Wie dem auch sei, ich bin sowohl mit der Erweiterung/Einbettung von CPython als auch mit JNI einigermaßen vertraut. Ich sehe es jedoch als letzten Ausweg, da es für jede Funktion/Klasse, die ich von CPython zu Java bereitstellen werde, viel Arbeit erfordert. Ich hatte gehofft, dass andere bereits etwas getan haben, um den Schmerz zu lindern. – NPE