python - 创建环境时如何读取和修复 pipenv 错误?
问题描述
我开始了一个新项目,想通过 pipenv 创建一个虚拟环境,就像我过去七次所做的那样。我是 pipenv 的初学者/新手,但设法让事情做我想做的事情,并且在我无法自己解决之前没有遇到任何重大问题。我真的很喜欢没有在我的系统上安装大量的依赖项,并且希望坚持使用虚拟环境。
要创建问题,我只需在一个新文件夹中生成一个新的锁定文件,无论是否事先有文件。已经生成的锁文件可以正常工作(没有尝试在旧项目中安装新的依赖项)。
终端
-> 工作区 pipenv 锁
Creating a virtualenv for this project…
Pipfile: /home/djursing/workspace/Pipfile
Using /usr/bin/python3 (3.6.7) to create virtualenv…
⠋ Creating virtual environment...Already using interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in /home/djursing/.local/share/virtualenvs/workspace-kiFyzAmW/bin/python3
✘ Failed creating virtual environment
[pipenv.exceptions.VirtualenvCreationException]: File "/home/djursing/.local/lib/python3.6/site-packages/pipenv/vendor/click/decorators.py", line 17, in new_func
[pipenv.exceptions.VirtualenvCreationException]: return f(get_current_context(), *args, **kwargs)
[pipenv.exceptions.VirtualenvCreationException]: File "/home/djursing/.local/lib/python3.6/site-packages/pipenv/cli/command.py", line 319, in lock
[pipenv.exceptions.VirtualenvCreationException]: ensure_project(three=state.three, python=state.python, pypi_mirror=state.pypi_mirror)
[pipenv.exceptions.VirtualenvCreationException]: File "/home/djursing/.local/lib/python3.6/site-packages/pipenv/core.py", line 574, in ensure_project
[pipenv.exceptions.VirtualenvCreationException]: pypi_mirror=pypi_mirror,
[pipenv.exceptions.VirtualenvCreationException]: File "/home/djursing/.local/lib/python3.6/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 "/home/djursing/.local/lib/python3.6/site-packages/pipenv/core.py", line 935, in do_create_virtualenv
[pipenv.exceptions.VirtualenvCreationException]: extra=[crayons.blue("{0}".format(c.err)),]
[pipenv.exceptions.VirtualenvCreationException]: Traceback (most recent call last):
File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/djursing/.local/lib/python3.6/site-packages/virtualenv.py", line 2502, in <module>
main()
File "/home/djursing/.local/lib/python3.6/site-packages/virtualenv.py", line 793, in main
symlink=options.symlink,
File "/home/djursing/.local/lib/python3.6/site-packages/virtualenv.py", line 1070, in create_environment
install_python(home_dir, lib_dir, inc_dir, bin_dir, site_packages=site_packages, clear=clear, symlink=symlink)
File "/home/djursing/.local/lib/python3.6/site-packages/virtualenv.py", line 1392, in install_python
shutil.copyfile(executable, py_executable)
File "/usr/lib/python3.6/shutil.py", line 121, in copyfile
with open(dst, 'wb') as fdst:
OSError: [Errno 26] Text file busy: '/home/djursing/.local/share/virtualenvs/workspace-kiFyzAmW/bin/python3'
Failed to create virtual environment.
我希望锁定文件,并且我正在为我的项目安装所需的依赖项的路上,但我却陷入了这个错误。我对一般系统管理知之甚少,这就是为什么我尽量避免在系统范围内安装依赖项/包。
我检查了名为:“OError: [Errno 26] Text file busy: '/...myvirtualenv/bin/python'”的线程,但没有让我更接近解决问题。
希望有人能够帮助我。
解决方案
我通过 python (python -run pipenv) 使用带有我创建的别名的 pipenv,而不是使用 bin 文件的路径 (~/usr/local/bin/pipenv)。更改别名以引用路径解决了该问题。
推荐阅读
- splunk - 我可以在 Splunk 中动态引用令牌吗?
- sql - 如何在 SQL 的新列中使用案例信息?
- reactjs - 使用 React 路由器时直接访问子文件夹?
- snowflake-cloud-data-platform - 为什么在此作业运行中总分区数为 1 而扫描的分区数更大?
- python - ImportError:无法导入名称“urlencode”
- sap-cloud-platform - CF 子域的 mta.yaml 中是否有任何占位符表示法?
- python - pandas multiIndex.from_product 并附加一列?
- css - CSS:重复的动画背景
- algorithm - 具有正权重和直径 D 的图中的单源最短路径
- java - 如何使用错误解码器抛出异常/获取数据 - OpenFeign