Cannot set up a python SDK at Python 2.7 The SDK seems invalid - Python项目迁移时虚拟环境无法成功导入,致依赖包无法识别的问题

参考文章

python项目迁移出现虚拟环境的sdk不可用cannot set up a python sdk

1 运行环境

pycharm 2018.2.3

2 相关描述与背景介绍

2.1 需求描述

借助Pycharm创建的python项目,进行 项目迁移,由机器A到机器B运行

该Python项目先前运行时已经自动配置了虚拟环境
在这里插入图片描述

2.2 问题描述

打开项目后,在pycharm中为项目配置Interpreter解释器路径时,发生

对项目已有虚拟环境,导入其自带的解释器时,提示python SDK不合法的问题

示例项目为PdfProcess, 该项目 虚拟环境自生成的解释器 的 路径

D:\pycharm_ex\PdfProcess\venv\Scripts\python.exe

在这里插入图片描述

2.3 代码错误表现

此时项目代码需要的依赖包无法加载 - 报红

未找到的引用,pdfminer包
在这里插入图片描述

2.4 项目虚拟环境检查

目标项目下 确实存在venv文件夹,且有python.exe解释器

在这里插入图片描述

2.5 迁移时已发生的相关变动

① 整个项目的路径发生变动,整体机器环境发生变动(由机器A -> 机器B)

② python3.7版本包 安装的路径发生变动 (D:\Python3.7 -> D:\Python37)

3 原因及解决方法

3.1 原因

项目迁移时,虚拟环境的 配置文件关于Python 版本的安装路径,使用绝对路径被写死,需要手动修改

查看该绝对路径(venv文件夹下的pyvenv.cfg配置文件)

pyvenv.cfg 文件内容

home = D:\Python3.7
include-system-site-packages = false
version = 3.7.7

3.2 解决办法

由于项目迁移,且 python 版本的安装路径发生变化

原先的Python 版本安装路径:D:\Python3.7 (和项目配置文件所需路径保持一致)

目标机器的Python 版本安装路径:D:\Python37 (和项目虚拟环境配置文件中所需的安装路径不一致)

修改 pyvenv.cfg 配置文件内容 ,手动重新指定Python 版本的绝对路径,和目标机器的Python 版本安装路径 保持一致

home = D:\Python37
include-system-site-packages = false
version = 3.7.7

目标机器Python版本安装路径

D:\Python37

在这里插入图片描述

4 最终效果

重新启动pycharm

重新为项目指定解释器路径(但仍使用该项目虚拟环境中自带的解释器,为了复用当前项目已经下载好的依赖包) - 此步骤可忽略

在这里插入图片描述

加载的依赖不再报红,可以正常使用程序 (对比步骤2.3)
在这里插入图片描述

  • 15
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值