【发布时间】:2020-06-30 09:55:25
【问题描述】:
我正在尝试使用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,它会给我完全相同的错误,所以它似乎毕竟不是连接问题。
你们有遇到过这个问题吗?
谢谢
【问题讨论】:
-
github.com/pypa/virtualenv/issues/1876 似乎是一个常见问题。 @gaborbernat 在链接中有解决方案和解释。
-
@gaborbernat 说要卸载软件包的全局和用户特定安装,然后只安装一个。由于我还没有找到为特定用户卸载 pipenv 的方法,例如“pip uninstall --user pipenv”,我只使用“pip uninstall pipenv”将其卸载并重新安装。这并没有解决问题。有没有办法查看是否有任何全球安装的 pipenv?谢谢
-
@AhaduTsegayeAbebe 您可能需要多次运行卸载命令,请参阅下面 Vinay 的回答