【问题标题】:Eclipse imports wrong version of pandas in pydev environmentEclipse在pydev环境中导入错误版本的pandas
【发布时间】:2016-01-21 07:19:12
【问题描述】:

我想知道为什么 Eclipse 调试环境链接到 pandas 0.14 而终端(和虚拟环境)链接到 pandas 0.17。

我在 linux (ubuntu) 上使用 Eclipse:

Version: Mars Release (4.5.0)
Build id: 20150621-1200 

简单的测试程序是

import pandas as pd
import sys
print ("DEBUG python version: ", sys.version)
print ("DEBUG main pd veriosn: ", pd.__version__)

我激活了venv/py27/bin/activate,命令行输出是

('DEBUG python version: ', '2.7.6 (default, Jun 22 2015, 17:58:13) \n[GCC 4.8.2]')
('DEBUG main pd veriosn: ', u'0.17.0')

当我使用指向 venv/py27/bin/python2.7 的 PyDev 解释器在 Eclipse 中运行时,输出为

('DEBUG python version: ', '2.7.6 (default, Jun 22 2015, 17:58:13) \n[GCC 4.8.2]')
('DEBUG main pd veriosn: ', '0.14.1')

pandas 版本在 Eclipse 内部是不同的。

当我转到 myproject.properties.PyDev-Interpreter/Grammer 时,它显示已配置的 py27。

当我进入 eclipse 'Run As',RunConfiguration 时,它会显示 'Default Interpreter' 导致下面的命令行。 PYTHONPATH 的第一行不在项目配置中。

/top/venv/myproject/bin/python2.7
-u
/top/myproject/src/tests/test_pandas.py

The PYTHONPATH that will be used is:

/home/rojasfr/.eclipse/org.eclipse.platform_4.5.0_1473617060_linux_gtk_x86_64/plugins/org.python.pydev_4.3.0.201508182223/pysrc/pydev_sitecustomize:
/top/myproject:
/top/myproject/src:
/top/venv/myproject/lib/python2.7:
/top/venv/myproject/lib/python2.7/lib-dynload:
/usr/lib/python2.7:
/usr/lib/python2.7/plat-x86_64-linux-gnu:
/usr/lib/python2.7/lib-tk:
/top/venv/myproject/lib/python2.7/site-packages

【问题讨论】:

  • 这个问题是否与stackoverflow.com/a/545880/1240268 重复?
  • 类似。该链接阐明了我应该使用 Run Configuration 来设置解释器 -ok 所以我将坚持使用 Run Configuration。
  • 我会坚持使用运行配置。然而,(见我上面描述的结尾)..运行配置中的解释器在 PYTHONPATH 中有额外的路径......我试图重命名 $HOME/.eclipse 但即使我重命名它似乎也损坏了工作区。需要恢复。
  • IIUC 选择解释器比选择 PYTHONPATH 更强大。
  • 我同意。但我相信 eclipse 安装没有正确完成。所以我试图卸载/清除 eclipse... 并重新安装几次。我正在使用eclipse.org/downloads/index.php?show_instructions=TRUE 当我使用 sudo /opt/eclipse-installer/eclipse-inst 它安装并且我能够启动 OK...但是我退出 eclipse(在 sudo 下运行)...然后我尝试从我的$HOME --> /opt/eclipse/jee-mars/eclipse/eclipse 但它在弹出窗口中失败并显示消息 [Eclipse 可执行启动器无法找到其配套共享库。[

标签: python eclipse pandas


【解决方案1】:

好的。多次重新安装 Eclipse 后......它似乎不是 Eclipse......它运行正常。在运行配置(或调试配置)中设置/选择解释器是可行的方法。

virtualenv 故障使根本问题变得复杂(参见 b)。 a) 我的项目 requirements.txt 引用了 pandas 0.14.1 - 由于以下问题,这需要很长时间才能确定。但是eclipse指向解释器使用virtualenv安装的东西......所以它运行正确。

b) 剩下的问题是为什么用 pandas 0.14 激活 virtualenv 'venv27' 表现得很古怪......即。 PROMPT 反映它已被激活。但是“which python”指向/usr/bin/python(激活后)。所以不知何故 venv27 被破坏了......需要一段时间才能通过使用 eclipse“命令”描述来确定。

我将 requirements.txt 更改为指向 pandas 0.17 并重建了 virtualenv 'venv27'。像它应该的那样工作。

现在已修复此问题。大量的用户错误......但学到了很多东西。

【讨论】:

    猜你喜欢
    • 2011-09-30
    • 2015-04-09
    • 1970-01-01
    • 2012-01-29
    • 1970-01-01
    • 1970-01-01
    • 2011-12-19
    • 1970-01-01
    • 2011-04-21
    相关资源
    最近更新 更多