我开始一个名为emus
的Django项目。这里是(短)结构:Django - ImportError:没有名为'myproject.settings'的模块; 'myproject'不是一个包
emus/ ### <-- renamed "emus" to "grp"
__init__.py
urls.py
settings/...
core/
__init__.py
admin.py
migrations/
__init__.py
models.py
tests.py
views/...
static/...
template/...
manage.py
requirements
tests
经过一段时间的工作,我们决定将emus重命名为grp。这是由PyCharm的一个队友完成的内置函数来改变所有的依赖。无论如何,他必须编辑一些文件。 该项目在他的本地机器上工作。当我拉它时,我立即得到了错误:ImportError: No module named 'grp.settings'; 'grp' is not a package
(整个错误日志下面) 建立一个新的虚拟机后,新的构建为我工作,但不适用于詹金斯。我们仍然有同样的错误。
以下是完整的错误日志:
$ python manage.py <any>
Traceback (most recent call last):
File "<frozen importlib._bootstrap>", line 2218, in _find_and_load_unlocked
AttributeError: 'module' object has no attribute '__path__'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/chkoenig/.virtualenvs/grp_dev/lib/python3.4/site-packages/django/core/management/__init__.py", line 351, in execute_from_command_line
utility.execute()
File "/home/chkoenig/.virtualenvs/grp_dev/lib/python3.4/site-packages/django/core/management/__init__.py", line 303, in execute
settings.INSTALLED_APPS
File "/home/chkoenig/.virtualenvs/grp_dev/lib/python3.4/site-packages/django/conf/__init__.py", line 48, in __getattr__
self._setup(name)
File "/home/chkoenig/.virtualenvs/grp_dev/lib/python3.4/site-packages/django/conf/__init__.py", line 44, in _setup
self._wrapped = Settings(settings_module)
File "/home/chkoenig/.virtualenvs/grp_dev/lib/python3.4/site-packages/django/conf/__init__.py", line 92, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/home/chkoenig/.virtualenvs/grp_dev/lib/python3.4/importlib/__init__.py", line 109, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
File "<frozen importlib._bootstrap>", line 2212, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
File "<frozen importlib._bootstrap>", line 2221, in _find_and_load_unlocked
ImportError: No module named 'grp.settings'; 'grp' is not a package
如何是类似的东西可能吗? 代码无法正常工作,但是在设置新的虚拟机之后(使用完全相同的设置 - 我使用脚本来控制软件包和设置),它的工作原理没有任何错误。
任何想法如何解决詹金斯这个错误? 在此先感谢
BTW .:的Python 3.4.3用的virtualenv和Django的1.8.5 另一个(也许是不必要的)信息:我们的项目的文件夹名称也被称为grp
。改变这并没有解决它。
- 更新:我manage.py
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "grp.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
你可以发布你的manage.py吗? – fasouto
更新了OP。 – Kroenig
谢谢。您的项目路径到Python的sys.path? – fasouto