繁体   English   中英

在Windows上更改virtualenv文件夹

[英]changing virtualenv folder on windows

在计算机修复我的python项目dir(windows)改变后(比如从d:到f :)。 现在我所有的虚拟现实都被打破了。 激活env后,virtualenv中的项目无法找到依赖项,自定义脚本(来自env \\ scripts文件夹)将无法正常工作

试过跑:

virtualenv --relocateble ENV_NAME (with the env name ..)

就像在这个stackoverflow问题中 ,它输出了很多行,如:

Script agent\Scripts\deactivate.bat cannot be made relative

我的virtualenv仍然破碎。

当我手动更改activate.bat set VIRTUAL_ENV为新路径时。 一些脚本再次工作。 但重定位脚本仍然无法运行,大多数脚本仍然坏了

即使运行python interpeter也失败了:

Traceback (most recent call last):
  File "F:\Python27\learn\agent\agent\lib\site.py", line 677, in <module>
    main()
  File "F:\Python27\learn\agent\agent\lib\site.py", line 666, in main
    aliasmbcs()
  File "F:\Python27\learn\agent\agent\lib\site.py", line 506, in aliasmbcs
    import locale, codecs
  File "F:\Python27\learn\agent\agent\lib\locale.py", line 19, in <module>
    import functools
ImportError: No module named functools

有没有什么办法解决这一问题? 救命

更新:我还在ENV \\ Scripts的所有脚本中手动更改了shebang python interpeter行。 现在所有失败都与上面相同的python失败

另一个更新: @udi系统python路径是:

['', 'C:\\dev\\Python27\\lib\\site-packages\\distribute-0.6.37-py2.7.egg', 'C:\\
dev\\Python27\\lib\\site-packages\\pip-1.3.1-py2.7.egg', 'C:\\dev\\Python27\\lib
\\site-packages\\numpy-1.7.1-py2.7-win32.egg', 'C:\\dev\\Python27\\lib\\site-pac
kages\\pandas-0.11.0-py2.7-win32.egg', 'C:\\dev\\Python27\\lib\\site-packages\\p
ytz-2013b-py2.7.egg', 'C:\\dev\\Python27\\lib\\site-packages\\python_dateutil-2.
1-py2.7.egg', 'C:\\dev\\Python27\\lib\\site-packages\\six-1.3.0-py2.7.egg', 'C:\
\dev\\Python27\\lib\\site-packages\\tornado-3.0.1-py2.7.egg', 'C:\\dev\\Python27
\\lib\\site-packages\\pyzmq-13.1.0-py2.7-win32.egg', 'C:\\dev\\Python27\\lib\\si
te-packages\\pygments-1.6-py2.7.egg', 'C:\\Windows\\system32\\python27.zip', 'C:
\\dev\\Python27\\DLLs', 'C:\\dev\\Python27\\lib', 'C:\\dev\\Python27\\lib\\plat-
win', 'C:\\dev\\Python27\\lib\\lib-tk', 'C:\\dev\\Python27', 'C:\\dev\\Python27\
\lib\\site-packages', 'C:\\dev\\Python27\\lib\\site-packages\\setuptools-0.6c11-
py2.7.egg-info']

因为我无法从virtualenv运行python,所以我无法从那里打印python路径

更正ENV_FOLDER\\Lib\\orig-prefix.txt python目录路径对我ENV_FOLDER\\Lib\\orig-prefix.txt帮助

好像您的系统和本地环境创建了来自不同版本的python的库和二进制文件的混合。

您可能需要删除LibScriptsInclude ,然后再使用virtualenv .重新开始virtualenv . 您可以保存site-packages文件夹,但如果您有requirements.txt文件,则应该重新安装软件包(另请参阅: 如何使用pip从本地缓存安装? )。

无论如何,我相信你可以创建一个脚本,一步完成所有这些。

我在我的Windows 10上安装了py2和py3。并通过直接使用virtualenv xxx创建virtualenv来解决此错误。 清除文件夹xxx并使用virtualenv -p TARGET_PY_EXE xxx重新安装后,一切顺利。 希望这将有助于多个python windows用户。 顺便说一句,我只是将env变量创建为PY2和PY3,而不是将绝对路径添加到PATH

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM