通过Eclipse调试Pylons应用程序

时间:2008-09-29 05:41:00

标签: python eclipse pylons pydev pyramid

我使用PyDev进行Eclipse设置,并且喜欢能够调试我的脚本/应用程序。我刚刚开始玩Pylons,并想知道是否有办法通过Eclipse启动paster服务器,以便我可以调试我的webapp?

7 个答案:

答案 0 :(得分:10)

创建新的启动配置(Python Run)

主要标签

使用paster-script.py作为主模块(您可以在python安装目录的Scripts子目录中找到它)

不要忘记在PYTHONPATH区域中添加应用程序的根文件夹

<强>参数 将基目录设置为根文件夹。

由于程序参数使用“serve development.ini”(或者您用来调试应用程序的任何内容)

常用标签

检查分配控制台并在后台启动

答案 1 :(得分:6)

答案 2 :(得分:2)

yanjost说得对,只是想补充一点,你需要确保不使用--reload选项,这样可以防止调试器正确连接自身并导致断点不起作用。我跑进来的只是一件小事。

答案 3 :(得分:2)

我能够通过更改参数选项卡中的“工作目录”来使用--reload工作,而不使用默认值(即选择'其他' - &gt;文件系统 - &gt;'你的Pylons的根目录'存储.ini。

答案 4 :(得分:1)

在Linux上可能是/ usr / bin / paster或者/ usr / local / bin / paster用于粘贴脚本,对于我有的参数:serve $ {workspace_loc} $ {project_path} /development.ini

答案 5 :(得分:1)

我也有这个工作(最后)。我使用buildout而不是virtualenv来安装pylons(说明:http://wiki.pylonshq.com/display/pylonscommunity/Howto+install+Pylons+with+buildout),所以上面的说明需要稍微改变一下路径。

- 对于“主模块”,我使用:

${workspace_loc:myeclipseprojectname/bin/paster}

(添加--reload使断点对我不起作用,我测试了几次)

- 对于“程序参数”,我使用:

serve ${workspace_loc:myeclipseprojectname/mypylonsprojectname/development.ini}

- 对于“工作目录,其他:”,我使用:

${workspace_loc:myeclipseprojectname/mypylonsprojectname}

- 如上所述,在“Common Tab”中,“Check allocate console and launch in background”

- 并记住在尝试之前设置断点。

答案 6 :(得分:0)

这并没有真正回答有关如何在eclipse中执行此操作的问题。但我一直用winpdb调试paster服务器,这是一个非常好的图形python调试器(你可以用easy_install winpdb安装它)。

启动服务器,例如:

winpdb /usr/local/bin/paster serve development.ini

然后点击“运行”按钮。

正如Wayne所说,使用--reload选项是必要的。至少我无法找到如何附加到实际的webapp,甚至在选择应该进入哪个分叉进程调试器时(可以使用“fork parent”和“fork child”调试器命令来控制进入不同的进程)。