Pycharm远程开发之全局pip,激活远程虚拟环境pip,以及pip的--user选项

在使用Pycharm进行远程开发时,遇到服务器虚拟环境pip安装包的问题。文章指出,Pycharm的本地pip安装不会影响服务器,而手动安装会同步到远程但可能涉及权限和虚拟环境激活。使用全局pip或--user选项可能导致包存储在不同位置。关键在于确保使用正确虚拟环境的pip,并调整环境变量以避免全局pip覆盖。解决方案是使用相应虚拟环境的pip.exe来下载包,以保持与Pycharm的同步。
摘要由CSDN通过智能技术生成

前言

最近需要部署一下生成对抗网络的开发环境,我自己的笔记本没有带显卡,想到实验室的服务器有带显卡索性就用实验室服务器的环境开发,通过pycharm的远程开发功能连接到服务器,本来以为轻轻松松就可以开始写代码了,结果发现了一系列关于虚拟环境的pip下载包问题,总结如下:

  • Pycharm上本地pip安装包,使用本地pip,不会保存到linux服务器,没有使用与远程服务器保持一致的pip
  • Pycharm上手动安装包,由于连接了远程服务器pycharm自动使用pip保持一致,如下图所示,会同步到远程
  • 远程服务器上pip安装包(权限不允许),没有激活虚拟环境,全局pip下载,权限不允许,添加–user选项,依旧是本地与远程pip不一致
  • 远程服务器上pip安装包带–user选项,软件包下载在.local文件夹中
  • 远程服务器上使用虚拟环境的pip去安装包,全局pip覆盖了虚拟环境的pip,pip仍旧不一致
  • 远程环境上进入虚拟环境bin目录,使用对应虚拟环境的pip下载,成功将下载软件包同步到本地pycharm

连接步骤

设置
新建虚拟环境下载程序包通过pycharm手动安装,远程服务器同步更新软件包
下载软件那么远程服务器下载的软件包,本地pycharm是否也是同步呢,首先激活远程服务器的虚拟环境。pip下载包没有同步到本地pycharm,这是什么原因呢。查看环境变量发现端倪,PATH环境变量中只有全局pip的路径,虚拟环境中的pip路径不存在,所以就算是激活了虚拟环境pip下载的软件包仍然是下载在全局环境,如果想要把软件包下载在当前用户目录下,使用pip的–user选线,该选项会在 /home/用户/ 目录下新建一个.local文件,所有pip --user下载的软件包都会保存在.local文件夹下。
PATH变量由于在使用pycharm远程连接服务器时,使用的是.virtualenv文件夹中的python解释器,所以只用使用.virtualenv中的pip.exe下载的软件包才会同步到pycharm中(使用.virtualenv中的pip.exe得使用绝对路径否则又会使用全局pip下载到全局环境中)
Python解释器

所以得出结论,pycharm远程连接使用的是哪个虚拟环境的python解释器就需要使用哪个虚拟环境的pip下载包,需要注意环境变量覆盖虚拟环境pip的问题。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值