我正在尝试使用
pipenv 2018.11.26
和 Windows [Version 10.0.14393]
上的 Python 3.5.2 (Anaconda 4.1.1 (64-bit))
创建一个 python 虚拟环境。这些都是强制设置,我无法更改。
我收到以下神秘错误:
C:\project_path\pipenv install
Creating a virtualenv for this project…
Pipfile: C:\project_path\Pipfile
Using C:/Anaconda3/pythonw.exe (3.5.2) to create virtualenv…
[ ==] Creating virtual environment...ImportError: cannot import name 'ensure_file_on_disk'
Failed creating virtual environment
[pipenv.exceptions.VirtualenvCreationException]: File "c:\anaconda3\lib\site- packages\pipenv\cli\command.py", line 254, in install
[pipenv.exceptions.VirtualenvCreationException]: editable_packages=state.installstate.editables,
[pipenv.exceptions.VirtualenvCreationException]: File "c:\anaconda3\lib\site- packages\pipenv\core.py", line 1741, in do_install
[pipenv.exceptions.VirtualenvCreationException]: pypi_mirror=pypi_mirror,
[pipenv.exceptions.VirtualenvCreationException]: File "c:\anaconda3\lib\site- packages\pipenv\core.py", line 574, in ensure_project
[pipenv.exceptions.VirtualenvCreationException]: pypi_mirror=pypi_mirror,
[pipenv.exceptions.VirtualenvCreationException]: File "c:\anaconda3\lib\site- packages\pipenv\core.py", line 506, in ensure_virtualenv
[pipenv.exceptions.VirtualenvCreationException]: python=python, site_packages=site_packages, pypi_mirror=pypi_mirror
[pipenv.exceptions.VirtualenvCreationException]: File "c:\anaconda3\lib\site- packages\pipenv\core.py", line 935, in do_create_virtualenv
[pipenv.exceptions.VirtualenvCreationException]: extra=[crayons.blue("{0}".format(c.err)),]
[pipenv.exceptions.VirtualenvCreationException]:
Failed to create virtual environment.
主要原因似乎是导入错误,但我找不到任何名为
ensure_file_on_disk
的内容。
我尝试卸载并重新安装
pipenv
但无济于事。
此外,由于我在代理后面运行,因此我创建了系统环境变量
no_proxy
、http_proxy
和 https_proxy
,但它也不起作用。
顺便说一下,如果我尝试运行
pipenv shell
,它会给我完全相同的错误,所以它看起来根本不是连接问题。
大家有遇到过这个问题吗?
谢谢
我解决了这个问题。就我而言,这是因为安装了多个版本的 virtualenv。我多次使用
pip3 uninstall virtualenv
删除了所有版本。此后我再次安装了最新的virtualenv。
我通过卸载
virtualenv
软件包并重新安装我发现的兼容版本解决了问题 20.0.25
pip3 install --user --upgrade cython virtualenv==20.0.28
就我而言,更新 pip 有帮助
python3.6 -m pip install --upgrade pip
下一步卸载virtualenv
python3.6 -m pip uninstall virtualenv
并安装它
python3.6 -m pip install virtualenv
这是版本问题。在 Windows 上,我输入以下命令:
> py -m ensurepip --upgrade
> py -m pip install --upgrade pip
> py -m pip install --upgrade pipenv
它有效!