写在前面
最近用Java写服务端程序时,遇到这样一个需求:需要把用python写的机器学习算法部署到服务器上,然后Java执行py脚本,并且取得算法执行的结果。在网上找了很久,有些跑不通,有些是基于windows的,我的服务器是linux的,遇到了不少坑= =好不容易解决了,记录一下。
注:Web服务器:Tomcat服务器OS:CentOS 7开发工具:Eclipse
直接嵌入python代码(使用PythonInterpreter)
适用情形:要嵌入的python代码不长步骤:
下载Jython,导入jython.jar到项目lib中引用org.python包测试代码如下:
import javax.script.*;
import org.python.util.PythonInterpreter;
import java.io.*;
import static java.lang.System.*;
public class Test
{
public static void main(String args[])
{
PythonInterpreter interpreter = new PythonInterpreter();
interpreter.exec("print "TEST";");
}
}
执行python脚本(使用PythonInterpreter)
适用情形: python代码为py文件形式步骤&