【发布时间】:2015-11-16 02:20:54
【问题描述】:
问题
我没有故意进行任何重大更改,但是突然,当我尝试在本地运行我的 django 应用程序时,我收到以下错误:
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ foreman start
03:55:28 web.1 | started with pid 38101
03:55:29 web.1 | Traceback (most recent call last):
03:55:29 web.1 | File "/Users/macuser/Dropbox/code/heroku/awe01/bin/gunicorn", line 5, in <module>
03:55:29 web.1 | from pkg_resources import load_entry_point
03:55:29 web.1 | File "/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/site-packages/pkg_resources.py", line 22, in <module>
03:55:29 web.1 | import zipfile
03:55:29 web.1 | File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 6, in <module>
03:55:29 web.1 | import io
03:55:29 web.1 | File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/io.py", line 51, in <module>
03:55:29 web.1 | import _io
03:55:29 web.1 | ImportError: dlopen(/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
03:55:29 web.1 | Referenced from: /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
03:55:29 web.1 | Expected in: flat namespace
03:55:29 web.1 | in /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
03:55:29 web.1 | exited with code 1
03:55:29 system | sending SIGTERM to all processes
SIGTERM received
(awe01)MoriartyMacBookAir13:awesomeapp macuser$
foreman start 命令是我始终在本地运行应用程序的方式(基于 heroku 指令),而不是 python manage.py runserver(所以我不知道 python manage.py runserver 最近是否在工作)但现在错误无论如何,foreman start 和 python manage.py runserver 的消息(上图)都是相同的。
即使我恢复到更早的 git 提交,我也会遇到同样的错误,当时 foreman start 工作的提交,所以我不认为这是最近添加到我的代码中的新行。相反,python 的设置方式似乎发生了一些变化(如果可能的话?)
附加信息
这一切都像31164285中描述的那样突然发生
我总是在虚拟环境中运行项目,如括号中的 (awe01) 所示
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ which python
/Users/macuser/Dropbox/code/heroku/awe01/bin/python
基于此线程 (31106958),以下输出可能对某人有用?
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ nm /System/Library/Frameworks/Python.framework/Versions/2.7/Python | grep PyErr_ReplaceException
0000000000092b82 T __PyErr_ReplaceException
请注意,如果在这个 venv 中输入“python”,它会告诉我我使用的是 2.7.6
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ python
Python 2.7.6 (default, Sep 9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/site-packages/feedparser-5.1.2-py2.7.egg', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python27.zip', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/plat-darwin', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/plat-mac', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/plat-mac/lib-scriptpackages', '/Users/macuser/Dropbox/code/heroku/awe01/Extras/lib/python', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-tk', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-old', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/site-packages']
brew config的输出
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ brew config
HOMEBREW_VERSION: 0.9.5
ORIGIN: https://github.com/Homebrew/homebrew.git
HEAD: 02d219b58d254c0e8bd77a73d901b0e03af13818
Last commit: 5 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com
CPU: quad-core 64-bit sandybridge
OS X: 10.10.5-x86_64
Xcode: 6.3.2
CLT: N/A
Clang: 6.1 build 602
X11: N/A
System Ruby: 2.0.0-p481
Perl: /usr/bin/perl
Python: /Users/macuser/Dropbox/code/heroku/awe01/bin/python
Ruby: /usr/bin/ruby
Java: 1.8.0_40
(awe01)MoriartyMacBookAir13:awesomeapp macuser$
brew doctor的输出
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!
Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected header files:
/usr/local/include/node/ares.h
/usr/local/include/node/ares_version.h
/usr/local/include/node/nameser.h
/usr/local/include/node/node.h
/usr/local/include/node/node_buffer.h
/usr/local/include/node/node_internals.h
/usr/local/include/node/node_object_wrap.h
/usr/local/include/node/node_version.h
/usr/local/include/node/openssl/opensslconf.h
/usr/local/include/node/uv-private/ngx-queue.h
/usr/local/include/node/uv-private/stdint-msvc2008.h
/usr/local/include/node/uv-private/tree.h
/usr/local/include/node/uv-private/uv-bsd.h
/usr/local/include/node/uv-private/uv-darwin.h
/usr/local/include/node/uv-private/uv-linux.h
/usr/local/include/node/uv-private/uv-sunos.h
/usr/local/include/node/uv-private/uv-unix.h
/usr/local/include/node/uv-private/uv-win.h
/usr/local/include/node/uv.h
/usr/local/include/node/v8-debug.h
/usr/local/include/node/v8-preparser.h
/usr/local/include/node/v8-profiler.h
/usr/local/include/node/v8-testing.h
/usr/local/include/node/v8.h
/usr/local/include/node/v8stdint.h
/usr/local/include/node/zconf.h
/usr/local/include/node/zlib.h
Warning: Your Xcode (6.3.2) is outdated
Please update to Xcode 6.4.
Xcode can be updated from the App Store.
Warning: Some keg-only formula are linked into the Cellar.
Linking a keg-only formula, such as gettext, into the cellar with
`brew link <formula>` will cause other formulae to detect them during
the `./configure` step. This may cause problems when compiling those
other formulae.
Binaries provided by keg-only formulae may override system binaries
with other strange results.
You may wish to `brew unlink` these brews:
openssl
命令python manage.py shell 失败并出现同样的错误,但是当我直接跳转到 python 控制台时,我可以看到哪些导入有效或无效
(本帖推荐检查 urllib2)
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ python
Python 2.7.6 (default, Sep 9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 94, in <module>
import httplib
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 80, in <module>
import mimetools
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/mimetools.py", line 6, in <module>
import tempfile
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tempfile.py", line 32, in <module>
import io as _io
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
Referenced from: /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
Expected in: flat namespace
in /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
到目前为止的尝试(还没有运气)
1。重新安装python
这里推荐:https://github.com/SirVer/ultisnips/issues/508 和问题31900156
所以我运行了以下内容:
brew uninstall python
brew update
brew install python
它没有解决问题。
这告诉我这不是 django 或特定于应用程序的问题;这是一个python问题。
这是卸载并重新安装python后的输出;我在运行pip 命令时遇到同样的错误:
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ brew uninstall python
Uninstalling /usr/local/Cellar/python/2.7.10_2... (6194 files, 96M)
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ brew update
Already up-to-date.
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ brew install python
==> Downloading https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
Already downloaded: /Library/Caches/Homebrew/python-2.7.10.tgz
==> Downloading https://bugs.python.org/file30805/issue10910-workaround.txt
Already downloaded: /Library/Caches/Homebrew/python--patch-c075353337f9ff3ccf8091693d278782fcdff62c113245d8de43c5c7acc57daf.txt
==> Patching
patching file Include/pyport.h
Hunk #1 succeeded at 713 (offset 14 lines).
Hunk #2 succeeded at 736 (offset 14 lines).
==> ./configure --prefix=/usr/local/Cellar/python/2.7.10_2 --enable-ipv6 --datarootdir=/usr/local/Cellar/python/2.7.10_2/share --datadir=/usr/local/Cellar/python/
==> make
==> make install PYTHONAPPSDIR=/usr/local/Cellar/python/2.7.10_2
==> make frameworkinstallextras PYTHONAPPSDIR=/usr/local/Cellar/python/2.7.10_2/share/python
==> Downloading https://pypi.python.org/packages/source/s/setuptools/setuptools-18.0.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/python--setuptools-18.0.1.tar.gz
==> Downloading https://pypi.python.org/packages/source/p/pip/pip-7.1.0.tar.gz
Already downloaded: /Library/Caches/Homebrew/python--pip-7.1.0.tar.gz
==> Downloading https://pypi.python.org/packages/source/w/wheel/wheel-0.24.0.tar.gz
Already downloaded: /Library/Caches/Homebrew/python--wheel-0.24.0.tar.gz
==> /usr/local/Cellar/python/2.7.10_2/bin/python -s setup.py --no-user-cfg install --force --verbose --single-version-externally-managed --record=installed.txt --
==> /usr/local/Cellar/python/2.7.10_2/bin/python -s setup.py --no-user-cfg install --force --verbose --single-version-externally-managed --record=installed.txt --
==> /usr/local/Cellar/python/2.7.10_2/bin/python -s setup.py --no-user-cfg install --force --verbose --single-version-externally-managed --record=installed.txt --
==> Caveats
Pip and setuptools have been installed. To update them
pip install --upgrade pip setuptools
You can install Python packages with
pip install <package>
They will install into the site-package directory
/usr/local/lib/python2.7/site-packages
See: https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Homebrew-and-Python.md
.app bundles were installed.
Run `brew linkapps python` to symlink these to /Applications.
==> Summary
???? /usr/local/Cellar/python/2.7.10_2: 6194 files, 96M, built in 3.4 minutes
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ pip install --upgrade
Traceback (most recent call last):
File "/Users/macuser/Dropbox/code/heroku/awe01/bin/pip", line 7, in <module>
from pip import main
File "/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/site-packages/pip/__init__.py", line 13, in <module>
from pip.utils import get_installed_distributions, get_prog
File "/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/site-packages/pip/utils/__init__.py", line 15, in <module>
import zipfile
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 6, in <module>
import io
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
Referenced from: /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
Expected in: flat namespace
in /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ brew linkapps python
Linking /usr/local/opt/python/IDLE.app to /Applications.
Linking /usr/local/opt/python/Python Launcher.app to /Applications.
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ pip install --upgrade
Traceback (most recent call last):
File "/Users/macuser/Dropbox/code/heroku/awe01/bin/pip", line 7, in <module>
from pip import main
File "/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/site-packages/pip/__init__.py", line 13, in <module>
from pip.utils import get_installed_distributions, get_prog
File "/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/site-packages/pip/utils/__init__.py", line 15, in <module>
import zipfile
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 6, in <module>
import io
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
Referenced from: /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
Expected in: flat namespace
in /Users/macuser/Dropbox/code/heroku/awe01/lib/python2.7/lib-dynload/_io.so
(awe01)MoriartyMacBookAir13:awesomeapp macuser$
我专门检查 urllib2 的原因是基于this comment on issue-1384
注意此时安装的python版本是2.7.10_2,但是当我在虚拟环境awe01中输入python时,它仍然会将我带到一个版本为2.7.6的shell
(awe01)MoriartyMacBookAir13:awesomeapp macuser$ python
Python 2.7.6 (default, Sep 9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
2。尝试工头在虚拟环境之外开始
这表示python是系统python,2.7.10
MoriartyMacBookAir13:awesomeapp macuser$ which python
/usr/bin/python
这也失败了,但我收到了不同的错误消息
MoriartyMacBookAir13:awesomeapp macuser$ foreman start
04:44:30 web.1 | started with pid 50330
04:44:30 web.1 | /usr/local/foreman/bin/foreman-runner: line 41: exec: gunicorn: not found
04:44:30 web.1 | exited with code 127
04:44:30 system | sending SIGTERM to all processes
SIGTERM received
MoriartyMacBookAir13:awesomeapp macuser$
现在有趣的是,foreman start 错误与 python manage.py runserver 错误不同:
MoriartyMacBookAir13:awesomeapp macuser$ python manage.py runserver
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
utility.execute()
File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 345, in execute
settings.INSTALLED_APPS
File "/Library/Python/2.7/site-packages/django/conf/__init__.py", line 46, in __getattr__
self._setup(name)
File "/Library/Python/2.7/site-packages/django/conf/__init__.py", line 42, in _setup
self._wrapped = Settings(settings_module)
File "/Library/Python/2.7/site-packages/django/conf/__init__.py", line 98, in __init__
% (self.SETTINGS_MODULE, e)
ImportError: Could not import settings 'shareducate.settings' (Is it on sys.path? Is there an import error in the settings file?): No module named dj_database_url
MoriartyMacBookAir13:awesomeapp macuser$
换句话说,我的问题现在看起来就像问题10812651,“突然我发现使用runserver 时没有定义DJANGO_SETTINGS_MODULE”。对这个问题的回应归咎于context_processors,但我没有对context_processors进行刻意调整。
请注意,虽然python manage.py shell 仍然失败,但如果我只输入python,我可以使用python shell...现在版本是2.7.10(不是上面的venv 中的2.7.6)。
另请注意,如果 urllib2 相关(是的,这也用于我的代码中),现在我可以导入它而不会出现任何错误:
MoriartyMacBookAir13:awesomeapp macuser$ python
Python 2.7.10 (default, Jul 14 2015, 19:46:27)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib2
>>>
输出: MoriartyMacBookAir13:awesomeapp macuser$ nm /System/Library/Frameworks/Python.framework/Versions/2.7/Python | grep PyErr_ReplaceException 0000000000092b82 T __PyErr_ReplaceException 与在虚拟环境中运行时完全相同。
3。 openssl
因此为什么brew doctor 在上面的openssl 上显示了一个特别说明:我尝试了来自问题31888394 的以下3 行代码
brew install openssl
brew link --force openssl
brew install python
(我认为 openssl 调查线来自上面的 urllib2 检查)
好像没什么区别。
4。尝试从 2.7.10 降级到 2.7.9
不确定这是否会有所不同,因为无论如何 venv 似乎是 2.7.6,但是当我尝试 [按照 github 上的建议(issue-1367 和 issue-1384 以及有问题的 31888479)
brew switch python 2.7.9我收到错误,
Error: python does not have a version "2.7.9" in the Cellar.
Versions available: 2.7.10_2
[编辑:基于 cmets 添加的步骤 5-7]
编辑:5.检查/修改路径
23783054 和issue-40241 等建议建议修改 PATH。 我从5846204 运行了这个命令:
export PATH=/usr/local/bin:$PATH
由于整个设置工作正常,然后突然停止工作,我不愿意进行太多可能使画面复杂化的系统更改...
编辑:6. virtualenv --clear [遵循@Maikflow 的评论]
导致这个错误
(awe01)MoriartyMacBookAir13:heroku macuser$ deactivate
MoriartyMacBookAir13:heroku macuser$ virtualenv --clear awe01
Deleting tree awe01/lib/python2.7
Traceback (most recent call last):
File "/usr/local/bin/virtualenv", line 11, in <module>
sys.exit(main())
File "/Library/Python/2.7/site-packages/virtualenv.py", line 824, in main
symlink=options.symlink)
File "/Library/Python/2.7/site-packages/virtualenv.py", line 984, in create_environment
site_packages=site_packages, clear=clear, symlink=symlink))
File "/Library/Python/2.7/site-packages/virtualenv.py", line 1145, in install_python
rmtree(lib_dir)
File "/Library/Python/2.7/site-packages/virtualenv.py", line 508, in rmtree
shutil.rmtree(dir)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 247, in rmtree
rmtree(fullname, ignore_errors, onerror)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 247, in rmtree
rmtree(fullname, ignore_errors, onerror)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 252, in rmtree
onerror(os.remove, fullname, sys.exc_info())
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 250, in rmtree
os.remove(fullname)
OSError: [Errno 13] Permission denied: 'awe01/lib/python2.7/site-packages/mutagen-1.22-py2.7.egg-info/dependency_links.txt'
MoriartyMacBookAir13:heroku macuser$
编辑:成功
7。用系统的python 2.7.10创建一个新的virtualenv
[关注@Evert 的评论]
(awe01)MoriartyMacBookAir13:awe01 macuser$ deactivate
MoriartyMacBookAir13:awe01 macuser$ cd ..
MoriartyMacBookAir13:heroku macuser$ virtualenv awe02 --no-site-packages
New python executable in awe02/bin/python
Installing setuptools, pip...done.
MoriartyMacBookAir13:heroku macuser$ cd awe02
MoriartyMacBookAir13:awe02 macuser$ source bin/activate
(awe02)MoriartyMacBookAir13:awe02 macuser$
此时我将 app 文件夹、awesomeapp 复制到文件夹 awe02 中(与 bin、lib 和 include 文件夹一起)
(awe02)MoriartyMacBookAir13:awe02 macuser$ cd awesomeapp/
(awe02)MoriartyMacBookAir13:awesomeapp macuser$ pip install -r requirements.txt
当我执行pip install -r requirements.txt 时,我遇到了一堆关于 psycopg2 的错误
warning: unused function 'Dprintf' 和
warning: implicit conversion loses integer precision: 'long' to 'int'
但就在我永远放弃编程之前,我尝试过
foreman start
它有效!
(awe02)MoriartyMacBookAir13:awesomeapp macuser$ foreman start
16:28:16 web.1 | started with pid 14174
16:28:16 web.1 | 2015-08-22 16:28:16 [14174] [INFO] Starting gunicorn 19.0.0
16:28:16 web.1 | 2015-08-22 16:28:16 [14174] [INFO] Listening at: http://0.0.0.0:5000 (14174)
16:28:16 web.1 | 2015-08-22 16:28:16 [14174] [INFO] Using worker: sync
16:28:16 web.1 | 2015-08-22 16:28:16 [14177] [INFO] Booting worker with pid: 14177
这是python 2.7.10
(awe02)MoriartyMacBookAir13:awesomeapp macuser$ python manage.py shell
Python 2.7.10 (default, Jul 14 2015, 19:46:27)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import urllib2
>>>
同样python manage.py runserver 也可以:)
其他想法
自上次foreman start 工作以来,我认为我已将 OS X 更新到版本 10.10.5。是不是系统更新了一些核心文件?
谢谢
我仍在自学 python/django,所以我的知识存在一些差距...任何故障排除方法或提示将不胜感激。
【问题讨论】:
-
重启 virtualenv:
virtualenv --clear venv使用 no-site-packages 标志重启它,看看情况如何。 -
我还没有通读所有细节,但是当你在 venv 之外启动 Python 时,你会选择自制 Python。尽管你的
which python输出说/usr/bin/python;默认的 OS X 系统 Python 对我来说是 2.7.6 版本。或者您是否尝试过升级系统 Python? -
尝试用自制Python创建一个新的venv;通常有一个
--python=...选项,您可以在其中指向/usr/local/bin/python。 -
感谢您的建议。 @Maikflow,Evert,我不知道我以前有什么python(可能是2.7.6?),但
brew install python意味着我现在有2.7.10。结合您的建议,一个带有--no-site-packages的新venv 起作用了!我编辑了答案,您的建议是第 7 步。我将进行更多调查,然后编辑此问题以更好地解释成功之路。我仍然有很多问题,因为我真的不明白发生了什么。很高兴能够在本地运行服务器! -
@Mark 当我将一个应用程序从根目录复制到另一个用户的目录时,这发生在我身上,几个小时后,我终于通过重新启动 virtualenv 来让它工作,就像我上面说的那样。很高兴我能帮忙:)。
标签: python django python-2.7