[英]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的库和二进制文件的混合。
您可能需要删除Lib
, Scripts
和Include
,然后再使用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.