Debug Google App Engine in Eclipse

接触GAE有一段时间了,时间空闲的话还能写写代码,看看别人的源码。感觉一切都很熟悉,至少不是陌生的感觉。DataStore方面由于不是使用的传统的关系型数据库,虽然使用的接口GQL跟原始的SQL长的越看越像兄弟,其实掩藏着很多限制,不能join就是最大的痛苦,所以很多原来基于关系模型的设计都要有所变化。但是有利有弊,比如ListProperty类型的加入可以巧妙地解决很多集合属性的类型的设计问题。另外就是调试程序的问题,原来print+python的敏捷特性也就足够了,现在每天就是盯着dev_appserver.py的输出控制台看,就不够Agile啦。很早前就看到dw上的一篇文章介绍用PyDEv来开发GAE,今天总算有时间实践一下了,顺便做一下笔记吧。

安装设置PyDev

使用更新站点 http://pydev.sourceforge.net/updates/ 从 Eclipse 内下载 PyDev,就可以将 Eclipse 转换为一个 Python IDE。安装 PyDev 之后,需要配置它。打开 Eclipse 并转到 Preferences > PyDev

您需要把 Python 安装位置告诉 PyDev。转到 Interpreter > Python 并单击 New,如上所示。只需浏览到 Python V2.5+ 安装,然后 Eclipse 应当会执行剩余操作。单击 OK,然后您将准备好从 Eclipse 中开发 Python。

调试你的程序

GAE SDK 将提供在本地运行项目的命令行工具。但是,我们希望利用 Eclipse,因此需要从 Eclipse 中运行所有内容。这将允许我们调试应用程序,稍后我们将看到。运行应用程序的第一步是编辑项目的 PYTHONPATH。完成此操作的最简单方法是在项目上右键单击并选择 Properties。这将打开项目属性。

 

Main Module 下,浏览到 $APP_ENGINE_HOME 并选择 dev_appserver.py 脚本。这是模拟 GAE 生产环境的 Python 应用服务器。接下来,转到 Arguments 选项卡。

Program arguments 框中,输入 ${project_loc}/src。Eclipse 变量 ${project_loc} 仅指向当前项目的物理位置。需要将应用程序目录传递给 dev_appserver.py 脚本,因而传递给 /src。clipse 将智能地把默认值设为先前创建的 Run 运行设置。无需修改,并且只需单击Debug就可以方便的调试的GAE了。

补充一个问题:项目第二次启动时,有可能会报错“Variable references empty selection: ${project_loc}Project > Clear 或是“刷新一下工程”应该可以解决这个问题。

在左侧菜单中选择 PyDev - PYTHONPATH。然后需要选择 Add source folder 并浏览到 GAE SDK 的安装位置。运行项目还需要创建一个 Run 配置文件。为此,选择 Run > Open Run 对话框。

posted @ 2009-01-04 22:30  yangli  阅读(1315)  评论(0编辑  收藏  举报