我之前在Eclipse中安装了PyDev和Jython,但从未遇到过问题。但是,这次我在手动或自动安装中遇到了错误:
Unable to gather the needed info from the system.
This usually means that your interpreter is not in
the system PATH.
No output was in the standard output when trying to create the interpreter info.
The error output contains:>>Traceback (innermost last):
File "/home/michaele/Downloads/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 89, in ?
File "/home/michaele/Downloads/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 46, in nativePath
File "/home/michaele/Downloads/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 51, in fullyNormalizePath
AttributeError: class 'org.python.modules.os' has no attribute 'path'
<<
在命令行上使用Jython或Python运行相同的脚本看起来很好:
$ python /eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py
<xml>
<version>2.6</version>
<executable>/usr/bin/python</executable>
<lib path="out">/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc</lib>
<lib path="ins">/usr/lib/python2.6</lib>
<lib path="ins">/usr/lib/python2.6/plat-linux2</lib>
<lib path="ins">/usr/lib/python2.6/lib-tk</lib>
<lib path="ins">/usr/lib/python2.6/lib-old</lib>
<lib path="ins">/usr/lib/python2.6/lib-dynload</lib>
<lib path="ins">/usr/local/lib/python2.6/dist-packages</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages/PIL</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages/gst-0.10</lib>
<lib path="ins">/usr/lib/pymodules/python2.6</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages/gtk-2.0</lib>
<lib path="ins">/usr/lib/pymodules/python2.6/gtk-2.0</lib>
<forced_lib>__builtin__</forced_lib>
<forced_lib>__main__</forced_lib>
<forced_lib>_ast</forced_lib>
<forced_lib>_bisect</forced_lib>
<forced_lib>_codecs</forced_lib>
<forced_lib>_collections</forced_lib>
<forced_lib>_functools</forced_lib>
<forced_lib>_hashlib</forced_lib>
<forced_lib>_locale</forced_lib>
<forced_lib>_random</forced_lib>
<forced_lib>_socket</forced_lib>
<forced_lib>_sre</forced_lib>
<forced_lib>_ssl</forced_lib>
<forced_lib>_struct</forced_lib>
<forced_lib>_symtable</forced_lib>
<forced_lib>_warnings</forced_lib>
<forced_lib>_weakref</forced_lib>
<forced_lib>array</forced_lib>
<forced_lib>binascii</forced_lib>
<forced_lib>cPickle</forced_lib>
<forced_lib>cStringIO</forced_lib>
<forced_lib>errno</forced_lib>
<forced_lib>exceptions</forced_lib>
<forced_lib>fcntl</forced_lib>
<forced_lib>gc</forced_lib>
<forced_lib>grp</forced_lib>
<forced_lib>imp</forced_lib>
<forced_lib>itertools</forced_lib>
<forced_lib>marshal</forced_lib>
<forced_lib>math</forced_lib>
<forced_lib>operator</forced_lib>
<forced_lib>posix</forced_lib>
<forced_lib>pwd</forced_lib>
<forced_lib>select</forced_lib>
<forced_lib>signal</forced_lib>
<forced_lib>spwd</forced_lib>
<forced_lib>strop</forced_lib>
<forced_lib>sys</forced_lib>
<forced_lib>syslog</forced_lib>
<forced_lib>thread</forced_lib>
<forced_lib>time</forced_lib>
<forced_lib>unicodedata</forced_lib>
<forced_lib>xxsubtype</forced_lib>
<forced_lib>zipimport</forced_lib>
<forced_lib>zlib</forced_lib>
</xml>Traceback (most recent call last):
File "/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 142, in <module>
raise RuntimeError('Ok, this is so that it shows the output (ugly hack for some platforms, so that it releases the output).')
RuntimeError: Ok, this is so that it shows the output (ugly hack for some platforms, so that it releases the output).
$ jython /eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py
<xml>
<version>2.2</version>
<executable>None</executable>
<lib path="out">/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc</lib>
<lib path="ins">/usr/share/jython/Lib</lib>
<lib path="out">/usr/lib/site-python</lib>
<lib path="out">__classpath__</lib>
<forced_lib>sets</forced_lib>
<forced_lib>cPickle</forced_lib>
<forced_lib>math</forced_lib>
<forced_lib>thread</forced_lib>
<forced_lib>md5</forced_lib>
<forced_lib>_jython</forced_lib>
<forced_lib>py_compile</forced_lib>
<forced_lib>time</forced_lib>
<forced_lib>jarray</forced_lib>
<forced_lib>array</forced_lib>
<forced_lib>os</forced_lib>
<forced_lib>xreadlines</forced_lib>
<forced_lib>operator</forced_lib>
<forced_lib>binascii</forced_lib>
<forced_lib>_sre</forced_lib>
<forced_lib>errno</forced_lib>
<forced_lib>synchronize</forced_lib>
<forced_lib>types</forced_lib>
<forced_lib>ucnhash</forced_lib>
<forced_lib>pre</forced_lib>
<forced_lib>struct</forced_lib>
<forced_lib>_weakref</forced_lib>
<forced_lib>new</forced_lib>
<forced_lib>imp</forced_lib>
<forced_lib>exceptions</forced_lib>
<forced_lib>cStringIO</forced_lib>
<forced_lib>sha</forced_lib>
<forced_lib>_codecs</forced_lib>
</xml>Traceback (innermost last):
File "/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 142, in ?
RuntimeError: Ok, this is so that it shows the output (ugly hack for some platforms, so that it releases the output).
也可以在Eclipse中使用Python或Jython在交互式控制台中运行,即:
蟒蛇:
import sys; print('%s %s' % (sys.executable or sys.platform, sys.version))
/usr/bin/python2.6 2.6.6 (r266:84292, Sep 15 2010, 16:22:56)
[GCC 4.4.5]
PyDev console: using default backend (IPython not available).
import os
os.path.normpath('/')
'/'
Jython:
import sys; print('%s %s' % (sys.executable or sys.platform, sys.version))
---> reloading /eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/pydevconsole.py
PyDev console: using default backend (IPython not available).
You are now in a console within Eclipse.
Use it with care as it can halt the VM.
Typing a line with "PYDEV_CONSOLE_TOGGLE_RUN_IN_UI"
will start executing all the commands in the UI thread.
java1.6.0_21 2.2.1
import os
os.path.normpath('/')
'/'
环境信息:
OS- Ubuntu 10.10 Maverick
Eclipse- Version: Indigo Service Release 2
Build id: 20120216-1857
Python- 2.6.6
Jython- 2.2.1 on java1.6.0_21
Java- java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) 64-Bit Server VM (build 17.0-b16, mixed mode)
抱歉,很长的帖子,但我不知道有什么用。为了使Jython在PyDev中工作无济于事,我已经尽了一切努力。任何帮助将不胜感激。
谢谢,
麦克风
编辑1:添加对Fabio的响应
感谢您提出的所有建议,我感谢您的帮助。但是没有走。
导致此错误:
无法从系统收集所需的信息。
This usually means that your interpreter is not in
the system PATH.
No output was in the standard output when trying to create the interpreter info.
The error output contains:>>Traceback (innermost last):
File "/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 15, in ?
ImportError: no module named javaos
<<
这对我来说毫无意义。
给了我一直得到的相同错误:
无法从系统收集所需的信息。
This usually means that your interpreter is not in
the system PATH.
No output was in the standard output when trying to create the interpreter info.
The error output contains:>>Traceback (innermost last):
File "/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 89, in ?
File "/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 46, in nativePath
File "/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 51, in fullyNormalizePath
AttributeError: class 'org.python.modules.os' has no attribute 'path'
<<
从日食:
无法从系统收集所需的信息。
这通常意味着您的口译员不在
系统路径。
尝试创建解释器信息时,标准输出中没有输出。
错误输出包含:>>跟踪(最里面的最后一个):
(没有代码对象)在第0行
文件“ /eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py”,第17行
print('\ n'.join(在os.environ.items()中为x排序(str(x))))
^
SyntaxError:语法无效
<<
从控制台:
python /eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py
('COLORTERM', 'gnome-terminal')
('DBUS_SESSION_BUS_ADDRESS', 'unix:abstract=/tmp/dbus-sgAQf9jF15,guid=95ee83c3b3510c530cb4ea8500000066')
('DEFAULTS_PATH', '/usr/share/gconf/gnome.default.path')
('DESKTOP_SESSION', 'gnome')
('DISPLAY', ':0.0')
('GDMSESSION', 'gnome')
('GDM_KEYBOARD_LAYOUT', 'us')
('GDM_LANG', 'en_US.utf8')
('GNOME_DESKTOP_SESSION_ID', 'this-is-deprecated')
('GNOME_KEYRING_CONTROL', '/tmp/keyring-JsqHSQ')
('GNOME_KEYRING_PID', '1799')
('GTK_MODULES', 'canberra-gtk-module')
('HOME', '/home/michaele')
('LANG', 'en_US.utf8')
('LOGNAME', 'michaele')
('MANDATORY_PATH', '/usr/share/gconf/gnome.mandatory.path')
('ORBIT_SOCKETDIR', '/tmp/orbit-michaele')
('PATH', '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games')
('PWD', '/home/michaele')
('SESSION_MANAGER', 'local/michaele-Dell-System-XPS-L702X:@/tmp/.ICE-unix/1818,unix/michaele-Dell-System-XPS-L702X:/tmp/.ICE-unix/1818')
('SHELL', '/bin/bash')
('SHLVL', '1')
('SSH_AGENT_PID', '1848')
('SSH_AUTH_SOCK', '/tmp/keyring-JsqHSQ/ssh')
('TERM', 'xterm')
('USER', 'michaele')
('USERNAME', 'michaele')
('WINDOWID', '67108892')
('WINDOWPATH', '7')
('XAUTHORITY', '/var/run/gdm/auth-for-michaele-cd81Hc/database')
('XDG_CONFIG_DIRS', '/etc/xdg/xdg-gnome:/etc/xdg')
('XDG_DATA_DIRS', '/usr/share/gnome:/usr/local/share/:/usr/share/')
('XDG_SESSION_COOKIE', '6b516b0ac1421896dc0de6dc00000009-1335548722.708677-1288196033')
('_', '/usr/bin/python')
<xml>
<version>2.6</version>
<executable>/usr/bin/python</executable>
<lib path="out">/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc</lib>
<lib path="ins">/usr/lib/python2.6</lib>
<lib path="ins">/usr/lib/python2.6/plat-linux2</lib>
<lib path="ins">/usr/lib/python2.6/lib-tk</lib>
<lib path="ins">/usr/lib/python2.6/lib-old</lib>
<lib path="ins">/usr/lib/python2.6/lib-dynload</lib>
<lib path="ins">/usr/local/lib/python2.6/dist-packages</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages/PIL</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages/gst-0.10</lib>
<lib path="ins">/usr/lib/pymodules/python2.6</lib>
<lib path="ins">/usr/lib/python2.6/dist-packages/gtk-2.0</lib>
<lib path="ins">/usr/lib/pymodules/python2.6/gtk-2.0</lib>
<forced_lib>__builtin__</forced_lib>
<forced_lib>__main__</forced_lib>
<forced_lib>_ast</forced_lib>
<forced_lib>_bisect</forced_lib>
<forced_lib>_codecs</forced_lib>
<forced_lib>_collections</forced_lib>
<forced_lib>_functools</forced_lib>
<forced_lib>_hashlib</forced_lib>
<forced_lib>_locale</forced_lib>
<forced_lib>_random</forced_lib>
<forced_lib>_socket</forced_lib>
<forced_lib>_sre</forced_lib>
<forced_lib>_ssl</forced_lib>
<forced_lib>_struct</forced_lib>
<forced_lib>_symtable</forced_lib>
<forced_lib>_warnings</forced_lib>
<forced_lib>_weakref</forced_lib>
<forced_lib>array</forced_lib>
<forced_lib>binascii</forced_lib>
<forced_lib>cPickle</forced_lib>
<forced_lib>cStringIO</forced_lib>
<forced_lib>errno</forced_lib>
<forced_lib>exceptions</forced_lib>
<forced_lib>fcntl</forced_lib>
<forced_lib>gc</forced_lib>
<forced_lib>grp</forced_lib>
<forced_lib>imp</forced_lib>
<forced_lib>itertools</forced_lib>
<forced_lib>marshal</forced_lib>
<forced_lib>math</forced_lib>
<forced_lib>operator</forced_lib>
<forced_lib>posix</forced_lib>
<forced_lib>pwd</forced_lib>
<forced_lib>select</forced_lib>
<forced_lib>signal</forced_lib>
<forced_lib>spwd</forced_lib>
<forced_lib>strop</forced_lib>
<forced_lib>sys</forced_lib>
<forced_lib>syslog</forced_lib>
<forced_lib>thread</forced_lib>
<forced_lib>time</forced_lib>
<forced_lib>unicodedata</forced_lib>
<forced_lib>xxsubtype</forced_lib>
<forced_lib>zipimport</forced_lib>
<forced_lib>zlib</forced_lib>
</xml>Traceback (most recent call last):
File "/eclipse/plugins/org.python.pydev_2.5.0.2012040618/PySrc/interpreterInfo.py", line 143, in <module>
raise RuntimeError('Ok, this is so that it shows the output (ugly hack for some platforms, so that it releases the output).')
RuntimeError: Ok, this is so that it shows the output (ugly hack for some platforms, so that it releases the output).
最佳答案
必须说我以前从未见过那个:)
我可以想象的一些事情可以解决它:
尝试更改:
\ plugins \ org.python.pydev_2.5.0.2012040618 \ PySrc \ interpreterInfo.py
更改:
导入操作系统
至:
导入os.path
另一个猜测是,在Eclipse中时某些环境变量会有所不同...首先要检查的是从与您进行打印相同的控制台启动Eclipse(而不是直接从桌面启动Eclipse)。
如果仍然不起作用,请执行以下操作:
在interpreterInfo.py脚本的开头(“ import os”之后)
做:
print('\ n'.join(在os.environ.items()中为x排序(str(x))))
然后尝试配置解释器并在日志中发布该日志。然后,还从控制台运行interpreterInfo.py并将其也添加到帖子中(以查看环境是否存在差异)。