我假设这个问题对于pydev来说是通用的,但我在eclipse中只使用了pydev,所以我不确定......
在过去,我不小心做了这件事,我想学习如何定期做这件事:
我不确定这是如何工作的,但我想知道如何触发这个,因为我调试时不再发生这种情况。
答案 0 :(得分:0)
嗯,这有一些方面:
如果您正在使用框架(例如Django),它会内置重新加载支持,因此,您可以即时获得代码更改(通常通过生成新进程)。
现在如果不是这样的话,在最新的PyDev版本中,PyDev将跟踪代码所做的版本,并尝试热插拔'新代码的旧代码。
它基于xreload,并将尝试在运行时修补类(即:直接更改类/方法代码)。
唯一要注意的是,它只会在你离开给定的函数后再次生效,因为Python无法在正在运行的框架上修补代码(有时可能会取决于代码的构造方式,不能成功进行交换,但对于常见情况,它确实可以正常工作)。
请注意,这仅适用于最新的PyDev版本。它出现在一些早期版本中,但由于其实施中存在问题而被删除 - 但进行了改造并重新添加:)
有关详细信息,请参阅:http://pydev.org/manual_adv_debugger_auto_reload.html。