在我的 Eclipse 项目中重命名我的源文件之一 logging.py 后无法导入 logging.py
Cannot import logging.py after I renamed one of my source files logging.py in my Eclipse project
我想,我通过重命名我的一个源文件 logging.py 破坏了 Eclipse,我很快将名称更改为其他名称但是 Eclipse 找不到原始的 python 标准文件...我重新安装了我的 Anaconda 安装但它没有解决问题......后来我发现它可能是一个 Python 问题(参见编辑 1)
当我要求 Eclipse 从 'import logging' 行查找或打开文件时,它似乎无法找到它...
是否可以在不重新安装 Eclipse 的情况下更正此问题?
Traceback (most recent call last):
File "C:\Users\ailete\workspace\landema\main.py", line 56, in <module>
import requests
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\__init__.py", line 53, in <module>
from .packages.urllib3.contrib import pyopenssl
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\__init__.py", line 27, in <module>
from . import urllib3
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\__init__.py", line 8, in <module>
from .connectionpool import (
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\connectionpool.py", line 35, in <module>
from .connection import (
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\connection.py", line 43, in <module>
from .util.ssl_ import (
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\util\__init__.py", line 19, in <module>
from .retry import Retry
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\util\retry.py", line 15, in <module>
log = logging.getLogger(__name__)
AttributeError: 'module' object has no attribute 'getLogger'
编辑 1
pyinstaller生成的可执行文件也有问题?! :
...
LOADER: Running main.py
Traceback (most recent call last):
File "<string>", line 43, in <module>
File "c:\users\ailete\appdata\local\temp\pip-build-iulqaq\pyinstaller\PyInstaller\loader\pyimod03_importers.py", line 363, in load_module
File "C:\Users\ailete\workspace\landema\entities.py", line 7, in <module>
from config import locale, ribbon_menu
File "c:\users\ailete\appdata\local\temp\pip-build-iulqaq\pyinstaller\PyInstaller\loader\pyimod03_importers.py", line 363, in load_module
File "C:\Users\ailete\workspace\landema\config.py", line 7, in <module>
import logging
ImportError: No module named logging
main returned -1
...
首先,定义模块路径,放置内置模块日志记录的位置:
user@host:$ python
Python 2.7.9 (default, Mar 1 2015, 12:57:24)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['/usr/lib/python2.7', ... ]
其次,确保有日志包。在我的 OS 中,我有 /usr/lib/python2.7/logging
。我想你不小心重命名了包;如果是这样,请将其重命名。
抱歉,我自己解决了。
当我告诉 Eclipse 清理项目时,我以为 Eclipse 删除了 .pyc 文件,但它显然不是这样工作的,所以在重新安装 anaconda 2 次并对该项目进行配置调整后(我还有其他......),我终于想起了检查...文件的 .pyc 仍然存在,并带有旧名称 'logging.pyc' ...一如既往地感谢 Eclipse,因为你的怪癖浪费了我的时间!
我遇到了一个非常相似的问题。我收到的错误是:"AttributeError: ‘flask.logging’ object has no attribute ‘getLogger’"。解决方案是降级 Flask 包(设置 -> 项目 -> 项目解释器)。
我想,我通过重命名我的一个源文件 logging.py 破坏了 Eclipse,我很快将名称更改为其他名称但是 Eclipse 找不到原始的 python 标准文件...我重新安装了我的 Anaconda 安装但它没有解决问题......后来我发现它可能是一个 Python 问题(参见编辑 1)
当我要求 Eclipse 从 'import logging' 行查找或打开文件时,它似乎无法找到它...
是否可以在不重新安装 Eclipse 的情况下更正此问题?
Traceback (most recent call last):
File "C:\Users\ailete\workspace\landema\main.py", line 56, in <module>
import requests
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\__init__.py", line 53, in <module>
from .packages.urllib3.contrib import pyopenssl
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\__init__.py", line 27, in <module>
from . import urllib3
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\__init__.py", line 8, in <module>
from .connectionpool import (
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\connectionpool.py", line 35, in <module>
from .connection import (
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\connection.py", line 43, in <module>
from .util.ssl_ import (
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\util\__init__.py", line 19, in <module>
from .retry import Retry
File "C:\Users\ailete\Anaconda2\Lib\site-packages\requests\packages\urllib3\util\retry.py", line 15, in <module>
log = logging.getLogger(__name__)
AttributeError: 'module' object has no attribute 'getLogger'
编辑 1
pyinstaller生成的可执行文件也有问题?! :
...
LOADER: Running main.py
Traceback (most recent call last):
File "<string>", line 43, in <module>
File "c:\users\ailete\appdata\local\temp\pip-build-iulqaq\pyinstaller\PyInstaller\loader\pyimod03_importers.py", line 363, in load_module
File "C:\Users\ailete\workspace\landema\entities.py", line 7, in <module>
from config import locale, ribbon_menu
File "c:\users\ailete\appdata\local\temp\pip-build-iulqaq\pyinstaller\PyInstaller\loader\pyimod03_importers.py", line 363, in load_module
File "C:\Users\ailete\workspace\landema\config.py", line 7, in <module>
import logging
ImportError: No module named logging
main returned -1
...
首先,定义模块路径,放置内置模块日志记录的位置:
user@host:$ python
Python 2.7.9 (default, Mar 1 2015, 12:57:24)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['/usr/lib/python2.7', ... ]
其次,确保有日志包。在我的 OS 中,我有 /usr/lib/python2.7/logging
。我想你不小心重命名了包;如果是这样,请将其重命名。
抱歉,我自己解决了。 当我告诉 Eclipse 清理项目时,我以为 Eclipse 删除了 .pyc 文件,但它显然不是这样工作的,所以在重新安装 anaconda 2 次并对该项目进行配置调整后(我还有其他......),我终于想起了检查...文件的 .pyc 仍然存在,并带有旧名称 'logging.pyc' ...一如既往地感谢 Eclipse,因为你的怪癖浪费了我的时间!
我遇到了一个非常相似的问题。我收到的错误是:"AttributeError: ‘flask.logging’ object has no attribute ‘getLogger’"。解决方案是降级 Flask 包(设置 -> 项目 -> 项目解释器)。