我在eclipse中编写了一个python模块,并将其命名为main.py
代码:

if __name__ == "__main__":
    inFile = open ("input.txt", 'r')
    inputData = inFile.readlines()

    print 'all done :)'

嗯,它运行,但是每次我保存项目,我在控制台中得到这个错误:
pydev debugger: Unable to find module to reload: "main".

你知道这是什么意思吗?

最佳答案

pydev调试器:找不到要重新加载的模块:
这条消息并不表示你的程序有问题。这意味着您在eclipse中保存了一个源文件,pydev试图重新加载新代码。当接收到CMDYReLoad代码命令时(Eclipse),该消息是由AuthNETCuffic()方法中的“AA>”生成的。。该“reload”命令正在sys.modules列表中查找您的模块(问题中名为“main”)。此列表将模块名称映射到模块对象(其中包括要从中重新加载模块的文件的名称)
因为在sys.modules字典中找不到“main”,所以它会发出该消息。如果它在sys.modules中找到了“main”,那么它会将sys.modules['main']从pydevd_reload module传递给xreload()。我认为这与pydev在eclipse/python调试环境中加载模块的方式有关。
结果是python代码的更新不会反映在调试器中。必须终止调试会话并从顶部重新启动它——这是更改源代码时调试的一种正常操作。
我已经把我的模块附加到sys.modules,这样它就可以找到要重新加载的模块。你可以做到这一点是很好的,但通常没有什么实际用途。

07-26 06:11
查看更多