如何调试在不是localhost的开发服务器上运行的python文件?

时间:2014-03-20 22:16:58

标签: python eclipse debugging intellij-idea

由于一些奇怪的原因,我当前的项目是这样的 - 我从开发服务器获取文件并更改本地系统中的文件并将其推回服务器并在那里进行测试。

由于我无法在本地系统中执行调试很困难。

我可以完全访问我的开发服务器。有什么办法可以连接到像Eclipse或IntelliJ这样的IDE并调试在dev服务器上运行的脚本吗?

我在IDE中看到了ssh连接的一些选项。在dev服务器中调试文件的任何文章或任何提示都会有所帮助。

我正在使用python 2.2 !!

2 个答案:

答案 0 :(得分:1)

获取PyDev @ http://pydev.org/。下载并安装该产品作为eclipse插件。

将pysrc目录的内容复制到远程系统。 pysrc目录位于PyDev插件的子目录下。去安装eclipse的地方。如果是/ opt / eclipse,请查找/opt/eclipse/plugins/org.python.pydev.debug_xxx.xxx/pysrc。您可以将pysrc目录复制到任何您喜欢的远程系统。

更改python代码,使其包含对pydevd.settrace的调用(“dev box IP”)

def start(session):
    sys.path.append("/tmp/pysrc") # this can be any folder you copied the pysrc folder in remote system
    import pydevd
    pydevd.settrace("devbox IP") # change this to correct IP

通过clixking工具栏栏图标在开发框中的eclipse上启动pydev远程调试服务器(P旁边有一个bug的图片,如果你在pydev透视图中找不到它,则进入Debug透视图)。并在settrace语句后面的代码上设置断点。现在运行远程服务器中的代码,代码中断,您可以在设置断点的开发框中看到。

答案 1 :(得分:0)

我不确定为什么你有这样的设置,但可能SSHFS可以提供帮助? 它可以节省您来回传输文件的时间,但通过IDE进行调试将不是一个选项。