Python Pip——用户将软件包安装到Windows 10上的默认用户目录
我在安装了Python 2.6和2.7的Windows 10上遇到了一个问题Python Pip——用户将软件包安装到Windows 10上的默认用户目录,python,windows,pip,windows-10,Python,Windows,Pip,Windows 10,我在安装了Python 2.6和2.7的Windows 10上遇到了一个问题 python -m pip install myPack --no-index --find-links=. --user 使用用户AutoUser运行此命令时,它会将myPack安装到默认用户目录C:\Users\Default\Python\Python27\site packages或C:\Users\Default\Appdata\Roaming\Python\site packages中,而不是C:\Use
python -m pip install myPack --no-index --find-links=. --user
使用用户AutoUser运行此命令时,它会将myPack安装到默认用户目录C:\Users\Default\Python\Python27\site packages或C:\Users\Default\Appdata\Roaming\Python\site packages中,而不是C:\Users\AutoUser\Appdata\Roaming\Python\site packages
- windows登录后很快就会自动安装,但我可以在日志中看到“query user”返回一行AutoUser(在调用pip之前)
- 其他操作系统没有这个问题李>
- Windows 10上的复制不稳定:可能是100的1倍李>
- python 2.6也安装在这些机器上,但我不确定它是否有意义:在Path系统变量中,2.6比2.7更晚。他们认为这可能是个问题,但pip并没有混淆python版本,它混淆了用户的目录
路径:
C:\ProgramData\Oracle\Java\javapath;C:\Python27\;C:\Python27\Scripts\;C:\Python26\;C:\Python26\Scripts;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\ProgramData\chocolatey\bin;
Python版本:
python --version
Python 2.7.13
Pip版本:
python -m pip --version
Pip version: pip 9.0.1 from C:\Python27\lib\site-packages (python 2.7)
您可以尝试使用
--target
选项设置安装目标,如下所示:
pip install --target=C:\Users\Autouser\Appdata\Roaming\Python\site-packages package_name
如果不起作用,另一个选项是尝试使用--install option
,如下所示:
pip install --install-option="--prefix=$PREFIX_PATH" package_name
最后,如果所有其他方法都失败了,那么还有一种方法:
PYTHONUSERBASE=/path/to/install/to pip install --user
您可以使用python2.x-mpipinstall…
希望其中一个能帮助你!:) 不幸的是,我不得不在生产过程中迅速解决这个问题,所以我放弃了,并在没有c:/python27/…的--user选项的情况下安装了它。。。目录
我想@DeltaMarine101中的一个建议会有所帮助 安装时尝试以管理员身份运行cmd我认为这个答案会很有用。%APPDATA%的值是多少?从您运行的命令来看,很明显Python2.6在这里没有任何作用。但真实情况如何?安装是如何触发的?是从服务中心来的吗?启动命令的用户是什么?您应该在启动命令之前打印其环境。当可能出现混淆时,请始终指定完整路径。所以它是不可复制的?您确定以前的某个模块安装没有任何事情要做吗?@CristiFati,安装是从我们的软件自动触发的:1)它将目标VM恢复到默认快照,2)等待来自内置“dropper”服务的握手;3) 将命令发送到此“滴管”以运行包含“pip安装”的powershell脚本。4) 脚本以自动用户的身份运行(我用“查询用户”记录了它)。我未能可靠地再现这个问题。至于打印环境,除了PATH之外,您还有什么建议?其他模块在这里肯定没什么可做的:它们根本不使用python。“我放弃”不是解决方案。如果它被移动到一个评论,这将是好的,但它不应该在这里作为一个答案,特别是被接受的答案。