Thomas Darimont
Erfahrenes Mitglied
Hallo!
Mit der Python Implementierung Jython (http://www.jython.org/) ist es moeglich Python Code auf einer JVM auszufuehren. Der Interpreter erzeugt aus dem Python Code JVM Bytecode.
Darueber hinaus kann man mittels Jython jedoch auch den kompletten Python Interpreter in einer Java Anwendung starten. Diese Moeglichkeit erlaubt das einfache Scripting von Anwendungen. Neben Python gibts auch noch viele weitere Sprachen die sich in Java einbetten lassen, wie etwa JRuby, Groovy, Scala, u.v.m. (Siehe: http://www.robert-tolksdorf.de/vmlanguages.html)
Zur Arbeit mit Java, Python und Jython bietet sich das PyDev (http://pydev.sourceforge.net/) Eclipse Plugin an welches die Eclipse IDE um eine gescheite Python Unterstuetzung bereichert. Diese bietet u.a. einen komfortablen Editor und einen Debugger
script.py:
Ausgabe:
7
Gruss Tom
Mit der Python Implementierung Jython (http://www.jython.org/) ist es moeglich Python Code auf einer JVM auszufuehren. Der Interpreter erzeugt aus dem Python Code JVM Bytecode.
Darueber hinaus kann man mittels Jython jedoch auch den kompletten Python Interpreter in einer Java Anwendung starten. Diese Moeglichkeit erlaubt das einfache Scripting von Anwendungen. Neben Python gibts auch noch viele weitere Sprachen die sich in Java einbetten lassen, wie etwa JRuby, Groovy, Scala, u.v.m. (Siehe: http://www.robert-tolksdorf.de/vmlanguages.html)
Zur Arbeit mit Java, Python und Jython bietet sich das PyDev (http://pydev.sourceforge.net/) Eclipse Plugin an welches die Eclipse IDE um eine gescheite Python Unterstuetzung bereichert. Diese bietet u.a. einen komfortablen Editor und einen Debugger
Java:
/**
*
*/
package de.tutorials.python;
import org.python.util.PythonInterpreter;
/**
* @author Tom
*
*/
public class IntegrationExample {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
PythonInterpreter interpreter = new PythonInterpreter();
interpreter.set("a",5);
interpreter.set("b",2);
//interpreter.execfile("scripts/script.py");
interpreter.exec("c=a+b");
System.out.println(interpreter.get("c"));
}
}
script.py:
Python:
c=a+b
Ausgabe:
7
Gruss Tom