pydev控制台已经ex

时间:2015-03-17 09:51:36

标签: python pydev

尝试在pydev中运行交互式python控制台时,我收到以下错误代码

我无法弄清楚出了什么问题。当我谷歌关于

  

控制台已退出,值为:1

部分错误,没有任何用处。

更奇怪的是,这件事只出现在我的一个python工作区项目中。只有一个。所有其他事情都与其他事情相同。

我想在问题中添加一张图片,但这需要我超过10个声誉.......

  

初始化控制台时出错。连接到控制台时出现意外错误。   无法从pydevconsole中重新获得合适的Hello响应。最后的消息   已收到:控制台已退出,值为:1等待   答案。

2 个答案:

答案 0 :(得分:7)

pip uninstall traitlets只为我工作。

答案 1 :(得分:1)

似乎(在我的系统上; YMMV)是acknowledged bug,其中pydev未更新以匹配从ipython版本4到版本5的API更改。

要么

pip uninstall ipython
pip install ipython==4.2.0

(在this answer中暗示),或将以下补丁应用于pydev_ipython_console_011.py

163c163
<                              self.has_readline)
---
>             )
171d170
<                              use_readline=self.has_readline,
183d181
<                              use_readline=self.has_readline,
194d191
<                              use_readline=self.has_readline,
239,245d235
< 
<         # Only configure readline if we truly are using readline.  IPython can
<         # do tab-completion over the network, in GUIs, etc, where readline
<         # itself may be absent
<         if self.has_readline:
<             self.set_readline_completer()
< 

卸载traitlets允许我在eclipse中打开pydev控制台,但是在命令行中打破了ipython,所以我重新安装了它。但是,由于错误消息提到某些进程因退出代码1而死亡,因此我认为可能存在值得看的抑制回溯。所以,我运行了上面提到的命令行

/usr/bin/python2.7 -u /home/tsbertalan/eclipse/cpp-mars/eclipse/../../../.p2/pool/plugins/org.python.pydev_4.5.4.201601292234/pysrc/pydevconsole.py 34462 35898 34462 35898

(这显然取决于我的具体安装),并以

结尾进行追溯
File "/home/tsbertalan/.p2/pool/plugins/org.python.pydev_4.5.4.201601292234/pysrc/_pydev_bundle/pydev_ipython_console_011.py", line 194, in _new_completer_200
    use_readline=self.has_readline,
AttributeError: 'PyDevTerminalInteractiveShell' object has no attribute 'has_readline'

当我用Google搜索最后一行时,我被引导到this answer,这是由于ipython v5中的API已更改。所以,这是pydev中的一个错误。然后,我检查了他们的问题跟踪器,发现它是already handled,并且解决方法是删除有问题的旧API详细信息(请参阅上面的补丁)。

不幸的是,补丁方法仅适用于pydev 4.5.4。当我使用Eclipse的“检查更新”功能进行升级时(希望5.1.3可用 - 只有5.1.2),该补丁通过ipython解决了交互式控制台启动时的即时失败,但使用了{{ 1}}打印docstrings而不是打印某种类似字典的对象。所以,我现在使用pydev 5.1.2和ipython 4.2.0。也许一旦我得到5.1.3,我会尝试更新ipython。