这里将记录关于使用pydev插件在Eclipse中开发Python,同时使用Jython来实现Java与Python的互操作:
(一)关于下载安装和配置pydev插件和Jython:
首先在官网下载到插件的压缩包http://pydev.org/,解压后直接将plugins和features对于覆盖Eclipse安装目录下的文件。打开Eclipse在首选项中便可以看到Pydev出现相关配置了,如果没有安装成功,可能就你的eclipse版本过高,可以到官网查看到相关要求,然后下载个版本低点的eclipse继续手动加载安装,许都网站上有关于eclipse中动态安装插件的实现,感觉速度不快,也就放弃这种方式。
以上是成功后相关示意图。
可以看到里面有几种环境的配置,如Interactive-Python、Interative-Jython等,如果你是进行纯python的开发,则可以将前一节安装的Python33的解释器python.exe加载到这个路径中才可以运行你建立的Python项目:
具体的纯Python项目开发就简单了,在Eclipse中New一个Python project就可以建立相应的py文件,而且右键run as 选择python就可以实现快速开发了。
(二)、关于Jython安装及在Eclipse中的开发测试
Jython是Python的Java实现,Python是个高效地动态脚本语言,可以实现多种当下流行的语言,如C、Java等,而下面就是建立好一个Python 实现Java的一个环境:
1、官网下载到http://jython.org/安装包jython-installer-2.5.3.jar,只要有了虚拟机环境就可以直接点击运行,它是纯Java实现的一个一个环境,安装后可以看到起安装目录结构和原来的Python相似,建好后如同JDK安装一样也可以建立一个环境变量方便使用,如:JYTHON-HOME、Path等。安装目录下Lib包是一些固定功能的Python库,其中多了一个jython.jar包,这个包是Java调用Python的API,其中有一个较为常用的类就是:org.python.util.PythonInterpreter,下面说明一个简单的调用:
简单不过的步骤,Eclipse中新建一个项目,项目中将jython.jar包路径构建好,下面是调用代码:
import org.python.util.PythonInterpreter;
import org.python.core.*;
public class Test {
public static void main(String []args) throws PyException
{ PythonInterpreter interp =new PythonInterpreter();
System.out.println("Hello, brave new world");
interp.exec("import sys");
interp.exec("print sys");
interp.set("a", new PyInteger(42));
interp.exec("print a");
interp.exec("x = 2+2");
PyObject x = interp.get("x");
System.out.println("x: "+x);
System.out.println("Goodbye, cruel world");
}
}
运行结果如下:
<module 'sys' (built-in)>
42
x: 4
Goodbye, cruel world
前面懂一点Python的应该会知道这个个脚本在Java中调用ok.当然如果我们不在exec()方法中直接写Python代码,也可以直接将写好的Python文件在Java中操作:
PythonInterpreter interp = new PythonInterpreter();
interp.execfile("src/h.py");
直接调用就可以啦。
2、既然Jython是Java与Python的交互语言,上面已经在Java中调用了Python脚本,下面简单实现Python使用JDK库:
要实现上面的调用,前提是建立好了Jython和Java的环境变量(因为它要调用Java库函数嘛)。可以直接在cmd中转向到py文件所在目录,运行jython simple.py就可以运行了
以下这个例子是在Jython安装目录demo中的:
from pawt import swing
import java
def exit(e): java.lang.System.exit(0)
frame = swing.JFrame('Swing Example', visible=1)
button = swing.JButton('Close Me!', actionPerformed=exit)
frame.contentPane.add(button)
frame.pack()
在cmd中运行结果可想而知了:
要在Eclipse中就更简单了,只要在新建的Python项目中配置好了一下环境
在那个项目下新建一个python文件:和上面的一样:直接右键run as -->Jython Run就有结果了。
个人研究结束,将其记录下来作为分享,以后有机会接触到更深内容将后面记录…………