Python pydev无法运行unittest(它在spyder中工作)
这并不是非常重要,因为我可以在Python pydev无法运行unittest(它在spyder中工作),python,pydev,python-unittest,Python,Pydev,Python Unittest,这并不是非常重要,因为我可以在spyder中使用它,但我非常喜欢pydev(我非常习惯eclipse),这很烦人,我已经花了一些时间在它上面,我想修复它 我得到了这个unittest(实际上它属于nltk),我无法使它在pydev中工作。我尝试过的事情: 在spyder中运行它可以正常工作 更新了pydev和eclipse(虽然我还没有加入上周发布的eclipse-Mars;我的版本是,适用于eclipse 4.5.0.20150603-1639和pydev 4.1.0.20150527000
spyder
中使用它,但我非常喜欢pydev
(我非常习惯eclipse),这很烦人,我已经花了一些时间在它上面,我想修复它
我得到了这个unittest
(实际上它属于nltk
),我无法使它在pydev
中工作。我尝试过的事情:
- 在spyder中运行它可以正常工作
- 更新了
和pydev
(虽然我还没有加入上周发布的eclipse-Mars;我的版本是,适用于eclipse 4.5.0.20150603-1639和pydev 4.1.0.201505270003)eclipse
- 我可以使用pydev完美地运行其他单元测试,包括断点和所有东西,只要它们位于与
nltk
- 读了很多这样的问题,但没有发现有什么帮助
- 我也试着把测试的部分内容复制到我的一个项目中,效果很好——这可能意味着我在做一些愚蠢的事情,但我不明白。一定是我的环境与从
结构运行测试的事实的结合nltk
- 在Python2.7和3.4中获得相同的行为
Traceback (most recent call last):
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydevd.py", line 13, in <module>
from pydevd_breakpoints import * #@UnusedWildImport
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydevd_breakpoints.py", line 15, in <module>
from pydevd_comm import GetGlobalDebugger
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydevd_comm.py", line 79, in <module>
import _pydev_completer
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/_pydev_completer.py", line 21, in <module>
import _pydev_imports_tipper
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/_pydev_imports_tipper.py", line 2, in <module>
import inspect
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/tools/anaconda/lib/python2.7/inspect.py", line 39, in <module>
import tokenize
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/git/nltk/nltk/tokenize/__init__.py", line 62, in <module>
from nltk.data import load
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/git/nltk/nltk/__init__.py", line 115, in <module>
from nltk.decorators import decorator, memoize
File "/Users/lorenzorubio/tools/pydev-mars/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.1.0.201505270003/pysrc/pydev_monkey_qt.py", line 71, in patched_import
return original_import(name, *args, **kwargs)
File "/Users/lorenzorubio/git/nltk/nltk/decorators.py", line 183, in <module>
@decorator
File "/Users/lorenzorubio/git/nltk/nltk/decorators.py", line 161, in decorator
if inspect.isclass(caller):
AttributeError: 'module' object has no attribute 'isclass'
我编辑到
from tokenize import tokenize
而且它有效
(nltk
tokenize将是import-nltk.tokenize
)
不过,修改系统文件一点也不干净。。。有更好的解决办法吗?为什么这只发生在pydev
中
再次感谢。我猜这是某个地方的命名冲突
inspect
必须是两个不同的东西,但是pydevimport inspect
发生在inspect
的原始定义之后。实际上,它与inspect
相关!我已经更新了这个问题。谢谢
from tokenize import tokenize