【问题标题】:trouble with creating a virtual environment in Windows 8, python 3.3在 Windows 8、python 3.3 中创建虚拟环境时遇到问题
【发布时间】:2014-01-22 09:39:46
【问题描述】:

我正在尝试在 Python 中创建一个虚拟环境,但是无论我重新安装多少次 python-setuptools 和 pip,我总是会收到错误消息。

我的计算机运行的是 Windows 8,我使用的是 Python 3.3。

E:\Documents\proj>virtualenv venv --distribute
Using base prefix 'c:\\Python33'
New python executable in venv\Scripts\python.exe
Installing setuptools, pip...
  Complete output from command E:\Documents\proj\venv\Scripts\python.exe -c "imp
ort sys, pip; pip...ll\"] + sys.argv[1:])" setuptools pip:
  Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "<frozen importlib._bootstrap>", line 1567, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1534, in _find_and_load_unlocked
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\pip-1.5-py2.py3-none-any.whl\pip\__init__.py", line 9, in <module>
  File "<frozen importlib._bootstrap>", line 1567, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1534, in _find_and_load_unlocked
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\pip-1.5-py2.py3-none-any.whl\pip\log.py", line 8, in <module>
  File "<frozen importlib._bootstrap>", line 1567, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1534, in _find_and_load_unlocked
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\setuptools-2.0.2-py2.py3-none-any.whl\pkg_resources.py", line 2696, in <modul
e>
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\setuptools-2.0.2-py2.py3-none-any.whl\pkg_resources.py", line 429, in __init_
_
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\setuptools-2.0.2-py2.py3-none-any.whl\pkg_resources.py", line 443, in add_ent
ry
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\setuptools-2.0.2-py2.py3-none-any.whl\pkg_resources.py", line 1722, in find_i
n_zip
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\setuptools-2.0.2-py2.py3-none-any.whl\pkg_resources.py", line 1298, in has_me
tadata
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\setuptools-2.0.2-py2.py3-none-any.whl\pkg_resources.py", line 1614, in _has
  File "c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv_suppo
rt\setuptools-2.0.2-py2.py3-none-any.whl\pkg_resources.py", line 1488, in _zipin
fo_name
AssertionError: c:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\EGG-INFO
\PKG-INFO is not a subpath of c:\Python33\lib\site-packages\virtualenv-1.11-py3.
3.egg\virtualenv_support\setuptools-2.0.2-py2.py3-none-any.whl\
----------------------------------------
...Installing setuptools, pip...done.
Traceback (most recent call last):
  File "C:\Python33\Scripts\virtualenv-script.py", line 9, in <module>
    load_entry_point('virtualenv==1.11', 'console_scripts', 'virtualenv')()
  File "C:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv.py",
line 820, in main
    symlink=options.symlink)
  File "C:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv.py",
line 988, in create_environment
    install_wheel(to_install, py_executable, search_dirs)
  File "C:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv.py",
line 956, in install_wheel
    'PIP_NO_INDEX': '1'
  File "C:\Python33\lib\site-packages\virtualenv-1.11-py3.3.egg\virtualenv.py",
line 898, in call_subprocess
    % (cmd_desc, proc.returncode))
OSError: Command E:\Documents\proj\venv\Scripts\python.exe -c "import sys, pip;
pip...ll\"] + sys.argv[1:])" setuptools pip failed with error code 1

【问题讨论】:

标签: python virtualenv pip windows-8.1 setuptools


【解决方案1】:

我找到了解决这个问题的方法。只有几天前发布的最新的virtualenv(v1.11)有这个问题。从你的 site-packages 文件夹中删除 egg 并通过easy_install virtualenv==1.10.1 安装以前的版本,virtualenv 可以正常工作。

【讨论】:

    【解决方案2】:

    我安装 virtulaenvwrapper-win 并使用命令将我的 virtualenv 版本升级到最新(1.11.5):

    pip install virtualenv --upgrade
    

    如果我写:

    mkvirtualenv demo --system-site-packages --python=C:\Python34\python.exe
    

    我明白了:

    python.exe: can't open file 'C:\Python34\Scripts\virtualenv-script.py': [Errno 2] No such file or directory
    

    解决方案——使用virtualenv,非virtualenvwrapper:

    cd C:\www\virtualenvs
    virtualenv demo --system-site-packages --python=C:\Python34\python.exe
    

    现在我只使用 workon 来激活/停用虚拟环境。 系统:Windows 8.1 x64

    【讨论】:

    • 谢谢您,这有助于将其从死角移开。此外,要实际使用新环境(在没有 --system-site-packages 的情况下创建),我必须将其目录移动到 #WORKON_HOME#(virtualenvwrappers 的 envs 容器)并编辑 &lt;env-path&gt;\Scripts\activate&lt;env-path&gt;\Scripts\activate.bat 以反映此更改。
    【解决方案3】:

    使用 virtualenvwraper==4.7.1(可能还有更高版本),可以像这样编辑 mkvirtualenv.bat:

    取消注释第 48 行(删除 REM):

    virtualenv.exe %*
    

    评论第 49 行(添加 REM)

    REM python.exe "%PYHOME%\Scripts\virtualenv-script.py" %ARGS%
    

    【讨论】:

      猜你喜欢
      • 2019-12-21
      • 2022-06-13
      • 2023-02-09
      • 2019-12-09
      • 2022-06-17
      • 2014-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多